 | us-gaap:AccountingStandardsUpdate201026Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201104Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201307Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201409Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201601Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201604Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201602Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201613Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201704Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201705Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201708Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201710Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201711Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201712Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201715Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201801Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201802Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201803Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201804Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201807Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201808Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201809Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201811Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201812Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201814Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201815Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201816Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201817Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201818Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201820Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201901Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201902Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201904Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201905Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate201911Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate202008Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate202101Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate202104Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:AccountingStandardsUpdate202105Member | domain-member | http://fasb.org/us-gaap/role/eedm/ExtensibleEnumerationLists |
 | us-gaap:NewAccountingPrinciplesEarlyAdoptionMember | dep-concept-deprecatedConcept | http://fasb.org/us-gaap/role/deprecated/deprecated |
 | us-gaap:AccountingStandardsUpdate201026Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201104Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201307Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201409Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201601Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201604Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201613Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201705Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201708Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201710Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201711Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201712Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201715Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201803Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201804Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201807Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201812Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201816Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201817Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201818Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201904Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201908Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201911Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate202001Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate202003Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate202101Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate202105Member | parent-child | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncome |
 | us-gaap:AccountingStandardsUpdate201026Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201104Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201307Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201409Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201601Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201604Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201613Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201705Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201708Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201710Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201711Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201712Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201715Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201803Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201804Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201807Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201812Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201816Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201817Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201818Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201904Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201908Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201911Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate202001Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate202003Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate202101Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate202105Member | domain-member | http://fasb.org/us-gaap/role/statement/StatementOfShareholdersEquityAndOtherComprehensiveIncomeStatementTable |
 | us-gaap:AccountingStandardsUpdate201026Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201104Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201307Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201409Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201601Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201604Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201602Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201613Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201704Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201705Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201708Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201710Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201711Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201712Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201715Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201801Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201802Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201803Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201804Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201807Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201808Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201809Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201811Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201812Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201814Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201815Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201816Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201817Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201818Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201820Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201901Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201902Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201904Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201905Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201908Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201911Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201912Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate202001Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate202004Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate202006Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate202008Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate202010Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate202101Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate202104Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate202105Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate202108Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate202110Member | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AccountingStandardsUpdate201026Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201104Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201307Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201409Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201601Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201604Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201602Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201613Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201704Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201705Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201708Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201710Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201711Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201712Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201715Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201801Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201802Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201803Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201804Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201807Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201808Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201809Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201811Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201812Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201814Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201815Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201816Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201817Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201818Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201820Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201901Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201902Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201904Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201905Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201908Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201911Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201912Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate202001Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate202004Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate202006Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate202008Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate202010Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate202101Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate202104Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate202105Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate202108Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate202110Member | domain-member | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AccountingStandardsUpdate201812Member | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceA |
 | us-gaap:AccountingStandardsUpdate201812Member | domain-member | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceANewAccountingPronouncementsOrChangeInAccountingPrincipleTable |