Quarterly report pursuant to Section 13 or 15(d)

Location on the Balance Sheet of Derivative Assets and Liabilities (Detail)

v2.4.1.9
Location on the Balance Sheet of Derivative Assets and Liabilities (Detail) (Fair Value, Inputs, Level 2, USD $)
In Millions, unless otherwise specified
Mar. 31, 2015
Dec. 31, 2014
Asset Derivatives    
Asset Derivatives $ 1,038us-gaap_DerivativeFairValueOfDerivativeAsset $ 721us-gaap_DerivativeFairValueOfDerivativeAsset
Derivative Asset, Fair Value, Net 1,013us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral 686us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral
Derivative Liabilities [Abstract]    
Liability Derivatives 114us-gaap_DerivativeFairValueOfDerivativeLiability 77us-gaap_DerivativeFairValueOfDerivativeLiability
Derivative Liability, Fair Value, Amount Offset Against Collateral 89us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral 42us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral
Designated as Hedging Instrument | Foreign Exchange Contracts | Other current assets
   
Asset Derivatives    
Asset Derivatives 413us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
204us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
Derivative Asset, Fair Value, Net 413us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
204us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
Designated as Hedging Instrument | Foreign Exchange Contracts | Other noncurrent assets
   
Asset Derivatives    
Asset Derivatives 290us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherNoncurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
229us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherNoncurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
Derivative Asset, Fair Value, Net 290us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherNoncurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
229us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherNoncurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
Designated as Hedging Instrument | Foreign Exchange Contracts | Other non-current liabilities
   
Derivative Liabilities [Abstract]    
Liability Derivatives 74us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
34us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
Derivative Liability, Fair Value, Amount Offset Against Collateral 74us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
34us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
Designated as Hedging Instrument | Interest Rate Contracts | Other noncurrent assets
   
Asset Derivatives    
Asset Derivatives 262us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherNoncurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
227us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherNoncurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
Derivative Asset, Fair Value, Net 246us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherNoncurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
194us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherNoncurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
Designated as Hedging Instrument | Interest Rate Contracts | Other non-current liabilities
   
Derivative Liabilities [Abstract]    
Liability Derivatives 16us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
35us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
Derivative Liability, Fair Value, Amount Offset Against Collateral 0us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
2us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_DesignatedAsHedgingInstrumentMember
Not Designated as Hedging Instrument | Foreign Exchange Contracts | Other current assets
   
Asset Derivatives    
Asset Derivatives 4us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
2us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
Derivative Asset, Fair Value, Net 1us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
2us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
Not Designated as Hedging Instrument | Foreign Exchange Contracts | Other current liabilities
   
Derivative Liabilities [Abstract]    
Liability Derivatives 3us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
Derivative Liability, Fair Value, Amount Offset Against Collateral 0us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
0us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_ForeignExchangeContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
Not Designated as Hedging Instrument | Price Risk Derivative [Member] | Other current assets
   
Asset Derivatives    
Asset Derivatives 1us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_PriceRiskDerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
0us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_PriceRiskDerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
Derivative Asset, Fair Value, Net 0us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_PriceRiskDerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
0us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_PriceRiskDerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
Not Designated as Hedging Instrument | Price Risk Derivative [Member] | Other current liabilities
   
Derivative Liabilities [Abstract]    
Liability Derivatives 3us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_PriceRiskDerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_PriceRiskDerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
Derivative Liability, Fair Value, Amount Offset Against Collateral 2us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_PriceRiskDerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
0us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_PriceRiskDerivativeMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
Not Designated as Hedging Instrument | Interest Rate Contracts | Other noncurrent assets
   
Asset Derivatives    
Asset Derivatives 68us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherNoncurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
59us-gaap_DerivativeFairValueOfDerivativeAsset
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherNoncurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
Derivative Asset, Fair Value, Net 63us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherNoncurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
57us-gaap_DerivativeFairValueOfDerivativeAssetAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherNoncurrentAssetsMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
Not Designated as Hedging Instrument | Interest Rate Contracts | Other current liabilities
   
Derivative Liabilities [Abstract]    
Liability Derivatives 0us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
1us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
Derivative Liability, Fair Value, Amount Offset Against Collateral 0us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
1us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherCurrentLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
Not Designated as Hedging Instrument | Interest Rate Contracts | Other non-current liabilities
   
Derivative Liabilities [Abstract]    
Liability Derivatives 18us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
7us-gaap_DerivativeFairValueOfDerivativeLiability
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
Derivative Liability, Fair Value, Amount Offset Against Collateral $ 13us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember
$ 5us-gaap_DerivativeFairValueOfDerivativeLiabilityAmountOffsetAgainstCollateral
/ us-gaap_BalanceSheetLocationAxis
= us-gaap_OtherLiabilitiesMember
/ us-gaap_DerivativeInstrumentRiskAxis
= us-gaap_InterestRateContractMember
/ us-gaap_FairValueByFairValueHierarchyLevelAxis
= us-gaap_FairValueInputsLevel2Member
/ us-gaap_HedgingDesignationAxis
= us-gaap_NondesignatedMember