 | us-gaap:PaymentsForRepurchaseOfCommonStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:PaymentsForRepurchaseOfPreferredStockAndPreferenceStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:PaymentsForRepurchaseOfConvertiblePreferredStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:PaymentsForRepurchaseOfPrivatePlacement | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:PaymentsForRepurchaseOfInitialPublicOffering | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:PaymentsForRepurchaseOfWarrants | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:PaymentsForRepurchaseOfOtherEquity | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:PaymentsForRepurchaseOfEquity | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstate |
 | us-gaap:PaymentsForRepurchaseOfCommonStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:PaymentsForRepurchaseOfPreferredStockAndPreferenceStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:PaymentsForRepurchaseOfConvertiblePreferredStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:PaymentsForRepurchaseOfPrivatePlacement | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:PaymentsForRepurchaseOfInitialPublicOffering | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:PaymentsForRepurchaseOfWarrants | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:PaymentsForRepurchaseOfOtherEquity | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:PaymentsForRepurchaseOfEquity | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectRealEstateStatementTable |
 | us-gaap:PaymentsForRepurchaseOfCommonStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:PaymentsForRepurchaseOfPreferredStockAndPreferenceStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:PaymentsForRepurchaseOfConvertiblePreferredStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:PaymentsForRepurchaseOfPrivatePlacement | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:PaymentsForRepurchaseOfInitialPublicOffering | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:PaymentsForRepurchaseOfWarrants | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:PaymentsForRepurchaseOfOtherEquity | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:PaymentsForRepurchaseOfEquity | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirect |
 | us-gaap:PaymentsForRepurchaseOfCommonStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:PaymentsForRepurchaseOfPreferredStockAndPreferenceStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:PaymentsForRepurchaseOfConvertiblePreferredStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:PaymentsForRepurchaseOfPrivatePlacement | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:PaymentsForRepurchaseOfInitialPublicOffering | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:PaymentsForRepurchaseOfWarrants | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:PaymentsForRepurchaseOfOtherEquity | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:PaymentsForRepurchaseOfEquity | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectStatementTable |
 | us-gaap:PaymentsForRepurchaseOfCommonStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfPreferredStockAndPreferenceStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfConvertiblePreferredStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfPrivatePlacement | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfInitialPublicOffering | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfWarrants | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfOtherEquity | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfEquity | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfCommonStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfPreferredStockAndPreferenceStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfConvertiblePreferredStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfPrivatePlacement | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfInitialPublicOffering | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfWarrants | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfOtherEquity | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfEquity | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectDepositBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfCommonStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfPreferredStockAndPreferenceStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfConvertiblePreferredStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfPrivatePlacement | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfInitialPublicOffering | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfWarrants | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfOtherEquity | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfEquity | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfCommonStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfPreferredStockAndPreferenceStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfConvertiblePreferredStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfPrivatePlacement | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfInitialPublicOffering | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfWarrants | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfOtherEquity | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfEquity | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectInvestmentBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfCommonStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfPreferredStockAndPreferenceStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfConvertiblePreferredStock | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfPrivatePlacement | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfInitialPublicOffering | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfWarrants | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfOtherEquity | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfEquity | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperations |
 | us-gaap:PaymentsForRepurchaseOfCommonStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfPreferredStockAndPreferenceStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfConvertiblePreferredStock | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfPrivatePlacement | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfInitialPublicOffering | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfWarrants | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfOtherEquity | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |
 | us-gaap:PaymentsForRepurchaseOfEquity | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfCashFlowsIndirectSecuritiesBasedOperationsStatementTable |