 | us-gaap:RecordedUnconditionalPurchaseObligationDueInNextRollingTwelveMonths | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInRollingYearTwo | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInRollingYearThree | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInRollingYearFour | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInRollingYearFive | parent-child | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingencies |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInRollingAfterYearFive | 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:RecordedUnconditionalPurchaseObligationDueInNextRollingTwelveMonths | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesRecordedUnconditionalPurchaseObligationTable |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInRollingYearTwo | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesRecordedUnconditionalPurchaseObligationTable |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInRollingYearThree | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesRecordedUnconditionalPurchaseObligationTable |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInRollingYearFour | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesRecordedUnconditionalPurchaseObligationTable |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInRollingYearFive | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesRecordedUnconditionalPurchaseObligationTable |
 | us-gaap:RecordedUnconditionalPurchaseObligationDueInRollingAfterYearFive | domain-member | http://fasb.org/us-gaap/role/disclosure/CommitmentAndContingenciesRecordedUnconditionalPurchaseObligationTable |