 | us-gaap:AccountsPayableAndAccruedLiabilitiesFairValueDisclosureAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosures |
 | us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisObligations | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosures |
 | us-gaap:CommitmentsFairValueDisclosure | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosures |
 | us-gaap:OtherLiabilitiesFairValueDisclosure | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosures |
 | us-gaap:NonfinancialLiabilitiesFairValueDisclosure | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosures |
 | us-gaap:AccountsPayableAndAccruedLiabilitiesFairValueDisclosureAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable |
 | us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisObligations | domain-member | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable |
 | us-gaap:CommitmentsFairValueDisclosure | domain-member | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable |
 | us-gaap:OtherLiabilitiesFairValueDisclosure | domain-member | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable |
 | us-gaap:NonfinancialLiabilitiesFairValueDisclosure | domain-member | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable |
 | us-gaap:AccountsPayableAndAccruedLiabilitiesFairValueDisclosureAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueByBalanceSheetGroupingTable |
 | us-gaap:FairValueLiabilitiesMeasuredOnRecurringBasisObligations | domain-member | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueByBalanceSheetGroupingTable |
 | us-gaap:CommitmentsFairValueDisclosure | domain-member | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueByBalanceSheetGroupingTable |
 | us-gaap:OtherLiabilitiesFairValueDisclosure | domain-member | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueByBalanceSheetGroupingTable |
 | us-gaap:NonfinancialLiabilitiesFairValueDisclosure | domain-member | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueByBalanceSheetGroupingTable |