 | us-gaap:DisposalGroupIncludingDiscontinuedOperationDescriptionAndTimingOfDisposal | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:DisposalGroupNotDiscontinuedOperationIncomeStatementDisclosuresAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:DisposalGroupIncludingDiscontinuedOperationBalanceSheetDisclosuresAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:DisposalGroupIncludingDiscontinuedOperationAdditionalDisclosuresAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:IncomeLossFromIndividuallySignificantComponentDisposedOfOrHeldForSaleExcludingDiscontinuedOperationsAttributableToParentBeforeIncomeTaxAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationDisclosuresAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:NetCashProvidedByUsedInDiscontinuedOperationsAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:DiscontinuedOperationAlternativeCashFlowInformationAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:DiscontinuedOperationAdditionalDisclosuresAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:DisposalGroupNotDiscontinuedOperationDisposalDisclosuresAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:DisposalGroupNotDiscontinuedOperationNameOfSegmentExtensibleList | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:DiscontinuedOperationNameOfSegmentExtensibleList | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:DisposalGroupNotDiscontinuedOperationName | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:DiscontinuedOperationName | parent-child | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperations |
 | us-gaap:IncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable | all | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:DisposalGroupIncludingDiscontinuedOperationDescriptionAndTimingOfDisposal | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:DisposalGroupIncludingDiscontinuedOperationConsideration | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:DisposalGroupNotDiscontinuedOperationIncomeStatementDisclosuresAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:DisposalGroupIncludingDiscontinuedOperationBalanceSheetDisclosuresAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:DisposalGroupIncludingDiscontinuedOperationAdditionalDisclosuresAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:IncomeLossFromIndividuallySignificantComponentDisposedOfOrHeldForSaleExcludingDiscontinuedOperationsAttributableToParentBeforeIncomeTaxAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:DiscontinuedOperationIncomeLossFromDiscontinuedOperationDisclosuresAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:NetCashProvidedByUsedInDiscontinuedOperationsAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:DiscontinuedOperationAlternativeCashFlowInformationAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:DiscontinuedOperationAdditionalDisclosuresAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:DisposalGroupNotDiscontinuedOperationDisposalDisclosuresAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:DisposalGroupNotDiscontinuedOperationNameOfSegmentExtensibleList | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:DiscontinuedOperationNameOfSegmentExtensibleList | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:DisposalGroupNotDiscontinuedOperationName | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |
 | us-gaap:DiscontinuedOperationName | domain-member | http://fasb.org/us-gaap/role/disclosure/DiscontinuedOperationsIncomeStatementBalanceSheetAndAdditionalDisclosuresByDisposalGroupsIncludingDiscontinuedOperationsTable |