 | us-gaap:RestructuringChargesAbstract | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:PaymentsForRestructuring | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:RestructuringCosts | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:RestructuringChargesAbstract | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:PaymentsForRestructuring | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:RestructuringCosts | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:RestructuringChargesAbstract | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:PaymentsForRestructuring | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:RestructuringCosts | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:RestructuringChargesAbstract | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:PaymentsForRestructuring | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:RestructuringCosts | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:RestructuringChargesAbstract | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:PaymentsForRestructuring | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:RestructuringCosts | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:RestructuringChargesAbstract | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:PaymentsForRestructuring | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:RestructuringCosts | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:RestructuringChargesAbstract | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:PaymentsForRestructuring | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:RestructuringCosts | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:RestructuringChargesAbstract | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:PaymentsForRestructuring | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:RestructuringCosts | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:RestructuringChargesAbstract | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:PaymentsForRestructuring | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:RestructuringCosts | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:RestructuringChargesAbstract | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:PaymentsForRestructuring | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:RestructuringCosts | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:RestructuringChargesAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/ExitOrDisposalCostObligations |
 | us-gaap:PaymentsForRestructuring | parent-child | http://fasb.org/us-gaap/role/disclosure/ExitOrDisposalCostObligations |
 | us-gaap:RestructuringCosts | parent-child | http://fasb.org/us-gaap/role/disclosure/ExitOrDisposalCostObligations |
 | us-gaap:RestructuringChargesAbstract | domain-member | http://fasb.org/us-gaap/role/disclosure/ExitOrDisposalCostObligationsScheduleOfRestructuringAndRelatedCostsTable |
 | us-gaap:PaymentsForRestructuring | domain-member | http://fasb.org/us-gaap/role/disclosure/ExitOrDisposalCostObligationsScheduleOfRestructuringAndRelatedCostsTable |
 | us-gaap:RestructuringCosts | domain-member | http://fasb.org/us-gaap/role/disclosure/ExitOrDisposalCostObligationsScheduleOfRestructuringAndRelatedCostsTable |