| Type | including |
|---|---|
| Role | http://fasb.org/us-gaap/role/disclosure/DerivativeInstrumentsAndHedgingActivitiesDerivativeTable |
| Type | Element |
|---|---|
| Hypercube | us-gaap:DerivativeTable |
| Explicit | srt:EnergyAxis |
| Member | srt:EnergyDomain |
| Member | srt:FuelMember |
| Member | srt:CrudeOilMember |
| Member | srt:HeatingOilMember |
| Member | srt:CrudeOilAndNGLPerBarrelMember |
| Member | srt:NaturalGasPerThousandCubicFeetMember |
| Explicit | us-gaap:VariableRateAxis |
| Member | us-gaap:VariableRateDomain |
| Member | us-gaap:BaseRateMember |
| Member | us-gaap:FederalFundsEffectiveSwapRateMember |
| Member | us-gaap:PrimeRateMember |
| Member | us-gaap:EurodollarMember |
| Member | us-gaap:LondonInterbankOfferedRateLIBORMember |
| Member | us-gaap:SifmaMunicipalSwapRateMember |
| Member | us-gaap:UsTreasuryUstInterestRateMember |
| Member | us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember |
| Member | us-gaap:LondonInterbankOfferedRateLiborSwapRateMember |
| Explicit | us-gaap:DerivativeInstrumentRiskAxis |
| Member | us-gaap:DerivativeContractTypeDomain |
| Member | us-gaap:InterestRateContractMember |
| Member | us-gaap:InterestRateFloorMember |
| Member | us-gaap:InterestRateCapMember |
| Member | us-gaap:InterestRateSwapMember |
| Member | us-gaap:InterestRateSwaptionMember |
| Member | us-gaap:ForeignExchangeContractMember |
| Member | us-gaap:CurrencySwapMember |
| Member | us-gaap:ForeignExchangeForwardMember |
| Member | us-gaap:ForeignExchangeFutureMember |
| Member | us-gaap:EurodollarFutureMember |
| Member | us-gaap:ForeignExchangeOptionMember |
| Member | us-gaap:CrossCurrencyInterestRateContractMember |
| Member | us-gaap:TreasuryLockMember |
| Member | us-gaap:EquityContractMember |
| Member | us-gaap:EquitySwapMember |
| Member | us-gaap:StockOptionMember |
| Member | us-gaap:CommodityContractMember |
| Member | us-gaap:CommodityOptionMember |
| Member | us-gaap:EnergyRelatedDerivativeMember |
| Member | us-gaap:CreditRiskContractMember |
| Member | us-gaap:EmbeddedDerivativeFinancialInstrumentsMember |
| Member | us-gaap:PriceRiskDerivativeMember |
| Member | us-gaap:CoalContractMember |
| Member | us-gaap:OtherContractMember |
| Explicit | us-gaap:PositionAxis |
| Member | us-gaap:PositionDomain |
| Member | us-gaap:LongMember |
| Member | us-gaap:ShortMember |
| Explicit | srt:RangeAxis |
| Member | srt:RangeMember |
| Member | srt:MaximumMember |
| Member | srt:MinimumMember |
| Label/QName |
|---|
us-gaap:DerivativeLineItems |
us-gaap:DerivativeDescriptionOfTerms |
us-gaap:DerivativeTermOfContract |
us-gaap:DerivativeTypeOfInstrument |
us-gaap:DerivativeNotionalAmount |
us-gaap:DerivativeNonmonetaryNotionalAmount |
us-gaap:DerivativeNumberOfInstrumentsHeld |
us-gaap:DerivativeUnderlyingRisk |
us-gaap:DerivativeDescriptionOfObjective |
us-gaap:DerivativeDescriptionOfHedgedItem |
us-gaap:DerivativeFairValueOfDerivativeNetAbstract |
us-gaap:DerivativeAssetFairValueNetAbstract |
us-gaap:DerivativeFairValueOfDerivativeAsset |
us-gaap:DerivativeAssetFairValueGrossLiability |
us-gaap:DerivativeFairValueOfDerivativeAssetAmountNotOffsetAgainstCollateral |
us-gaap:DerivativeLiabilityFairValueNetAbstract |
us-gaap:DerivativeFairValueOfDerivativeLiability |
us-gaap:DerivativeLiabilityFairValueGrossAsset |
us-gaap:DerivativeFairValueOfDerivativeLiabilityAmountNotOffsetAgainstCollateral |
us-gaap:DerivativeFairValueOfDerivativeNet |
us-gaap:DerivativeFairValueAmountOffsetAgainstCollateralNetAbstract |
us-gaap:DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral |
us-gaap:DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral |
us-gaap:DerivativeFairValueAmountOffsetAgainstCollateralNet |
us-gaap:NotionalAmountOfDerivativesAbstract |
us-gaap:DerivativeAssetNotionalAmount |
us-gaap:DerivativeLiabilityNotionalAmount |
us-gaap:NotionalAmountOfNonderivativeInstruments |
us-gaap:DerivativeNonmonetaryNotionalAmountVolume |
us-gaap:DerivativeNonmonetaryNotionalAmountMass |
us-gaap:DerivativeNonmonetaryNotionalAmountEnergyMeasure |
us-gaap:DerivativeNonmonetaryNotionalAmountFlowRate |
us-gaap:UnderlyingDerivativeAsset |
us-gaap:UnderlyingDerivativeLiability |
us-gaap:UnderlyingDerivative |
us-gaap:UnderlyingDerivativeVolume |
us-gaap:UnderlyingDerivativeMass |
us-gaap:UnderlyingDerivativeEnergyMeasure |
us-gaap:UnderlyingDerivativeFlowRate |
us-gaap:DerivativeNetHedgeIneffectivenessGainLoss |
us-gaap:DerivativeAmountOfHedgedItem |
us-gaap:DerivativeCreditRiskValuationAdjustmentDerivativeAssets |
us-gaap:DerivativeCreditRiskValuationAdjustmentDerivativeLiabilities |
us-gaap:DerivativeInceptionDates |
us-gaap:DerivativeMaturityDates |
us-gaap:DerivativeRemainingMaturity1 |
us-gaap:DerivativeAverageRemainingMaturity1 |
us-gaap:DerivativeFixedInterestRate |
us-gaap:DerivativeAverageFixedInterestRate |
us-gaap:DerivativeVariableInterestRate |
us-gaap:DerivativeAverageVariableInterestRate |
us-gaap:DerivativeBasisSpreadOnVariableRate |
us-gaap:DerivativeAverageBasisSpreadOnVariableRate |
us-gaap:DerivativeForwardInterestRate |
us-gaap:DerivativeAverageForwardInterestRate |
us-gaap:DerivativeCapInterestRate |
us-gaap:DerivativeAverageCapInterestRate |
us-gaap:DerivativeFloorInterestRate |
us-gaap:DerivativeAverageFloorInterestRate |
us-gaap:DerivativeSwaptionInterestRate |
us-gaap:DerivativeAverageSwaptionInterestRate |
us-gaap:DerivativeCurrencyBought |
us-gaap:DerivativeCurrencySold |
us-gaap:DerivativeUnderlying |
us-gaap:DerivativeUnderlyingBasis |
us-gaap:DerivativeForwardExchangeRate1 |
us-gaap:DerivativeAverageForwardExchangeRate1 |
us-gaap:DerivativeForeignCurrencyOptionStrikePrice |
us-gaap:DerivativeAverageForeignCurrencyOptionStrikePrice |
us-gaap:DerivativeExchangeRateCap1 |
us-gaap:DerivativeAverageExchangeRateCap1 |
us-gaap:DerivativeExchangeRateFloor1 |
us-gaap:DerivativeAverageExchangeRateFloor1 |
us-gaap:DerivativeForwardPrice |
us-gaap:DerivativeAveragePriceRiskOptionStrikePrice |
us-gaap:DerivativeCapPrice |
us-gaap:DerivativeAverageCapPrice |
us-gaap:DerivativeFloorPrice |
us-gaap:DerivativeAverageFloorPrice |
us-gaap:DerivativeSwapType |
us-gaap:DerivativeSwapTypeFixedPrice |
us-gaap:DerivativeSwapTypeAverageFixedPrice |
us-gaap:DerivativeSwapTypeVariablePrice |
us-gaap:DerivativeSwapTypeAverageVariablePrice |
us-gaap:DerivativePriceRiskOptionStrikePrice |
us-gaap:DerivativeAverageForwardPrice |
us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsAbstract |
us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsType |
us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsRisk |
us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsPurpose |
us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsAssetAtFairValue |
us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsLiabilityAtFairValue |
us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNetAbstract |
us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGain |
us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsLoss |
us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet |
us-gaap:DerivativeCostOfHedgeNetOfCashReceivedAbstract |
us-gaap:DerivativeCostOfHedge |
us-gaap:DerivativeCashReceivedOnHedge |
us-gaap:DerivativeCostOfHedgeNetOfCashReceived |
us-gaap:DerivativeCollateralAbstract |
us-gaap:DerivativeCollateralRightToReclaimCash |
us-gaap:DerivativeCollateralRightToReclaimSecurities |
us-gaap:DerivativeLiabilityCollateralRightToReclaimCashOffset |
us-gaap:DerivativeCollateralObligationToReturnCash |
us-gaap:DerivativeCollateralObligationToReturnSecurities |
us-gaap:DerivativeAssetCollateralObligationToReturnCashOffset |
us-gaap:DerivativeNonmonetaryNotionalAmountPercentOfRequiredNeedCoverage |