 | us-gaap:RecordedUnconditionalPurchaseObligationDueWithinOneYear | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInSecondYear | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInThirdYear | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInFourthYear | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInFifthYear | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueAfterFifthYear | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:RecordedUnconditionalPurchaseObligation | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueWithinOneYear | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesRecordedUnconditionalPurchaseObligationTable |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInSecondYear | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesRecordedUnconditionalPurchaseObligationTable |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInThirdYear | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesRecordedUnconditionalPurchaseObligationTable |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInFourthYear | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesRecordedUnconditionalPurchaseObligationTable |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInFifthYear | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesRecordedUnconditionalPurchaseObligationTable |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueAfterFifthYear | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesRecordedUnconditionalPurchaseObligationTable |
 | us-gaap:RecordedUnconditionalPurchaseObligation | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesRecordedUnconditionalPurchaseObligationTable |