 | us-gaap:PaymentsToAcquireBusinessesGross | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:PaymentsToAcquireInProcessResearchAndDevelopment | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:PaymentsForProceedsFromPreviousAcquisitionAbstract | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:OtherPaymentsToAcquireBusinesses | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:CashAcquiredFromAcquisition | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:PaymentsToAcquireBusinessesGross | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:PaymentsToAcquireInProcessResearchAndDevelopment | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:PaymentsForProceedsFromPreviousAcquisitionAbstract | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:OtherPaymentsToAcquireBusinesses | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:CashAcquiredFromAcquisition | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:PaymentsToAcquireBusinessesGross | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:PaymentsToAcquireInProcessResearchAndDevelopment | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:PaymentsForProceedsFromPreviousAcquisitionAbstract | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:OtherPaymentsToAcquireBusinesses | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:CashAcquiredFromAcquisition | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:PaymentsToAcquireBusinessesGross | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:PaymentsToAcquireInProcessResearchAndDevelopment | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:PaymentsForProceedsFromPreviousAcquisitionAbstract | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:OtherPaymentsToAcquireBusinesses | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:CashAcquiredFromAcquisition | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:PaymentsToAcquireBusinessesGross | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:PaymentsForProceedsFromPreviousAcquisitionAbstract | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:OtherPaymentsToAcquireBusinesses | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:CashAcquiredFromAcquisition | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:PaymentsToAcquireBusinessesGross | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:PaymentsForProceedsFromPreviousAcquisitionAbstract | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:OtherPaymentsToAcquireBusinesses | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:CashAcquiredFromAcquisition | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:PaymentsToAcquireBusinessesGross | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:PaymentsForProceedsFromPreviousAcquisitionAbstract | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:OtherPaymentsToAcquireBusinesses | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:CashAcquiredFromAcquisition | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:PaymentsToAcquireBusinessesGross | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:PaymentsForProceedsFromPreviousAcquisitionAbstract | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:OtherPaymentsToAcquireBusinesses | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:CashAcquiredFromAcquisition | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:PaymentsToAcquireBusinessesGross | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:PaymentsForProceedsFromPreviousAcquisitionAbstract | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:OtherPaymentsToAcquireBusinesses | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:CashAcquiredFromAcquisition | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:PaymentsToAcquireBusinessesGross | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:PaymentsForProceedsFromPreviousAcquisitionAbstract | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:OtherPaymentsToAcquireBusinesses | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:CashAcquiredFromAcquisition | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:PaymentsToAcquireBusinessesNetOfCashAcquired | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |