Revenue, Practical Expedient [Abstract]

NameRevenuePracticalExpedientAbstract
Namespacehttp://fasb.org/us-gaap/2020-01-31
Prefixus-gaap
Data typexbrli:stringItemType
Period typeduration
Substitution Groupxbrli:item
BalanceNone
NillableTrue
AbstractTrue

Labels

TextLangRoleContainer role
Revenue, Practical Expedient [Abstract]en-UShttp://www.xbrl.org/2003/role/labelhttp://www.xbrl.org/2003/role/link

Related Child Concepts

NameRelation TypeRole
us-gaap:RevenuePracticalExpedientInitialApplicationAndTransitionCompletedContractSameReportingPeriod
parent-childhttp://fasb.org/us-gaap/role/disclosure/RevenuefromContractswithCustomers
us-gaap:RevenuePracticalExpedientInitialApplicationAndTransitionCompletedContractUseOfTransactionPriceAtContractCompletionDate
parent-childhttp://fasb.org/us-gaap/role/disclosure/RevenuefromContractswithCustomers
us-gaap:RevenuePracticalExpedientInitialApplicationAndTransitionNondisclosureOfTransactionPriceAllocationToRemainingPerformanceObligation
parent-childhttp://fasb.org/us-gaap/role/disclosure/RevenuefromContractswithCustomers
us-gaap:RevenuePracticalExpedientInitialApplicationAndTransitionNonrestatementOfModifiedContract
parent-childhttp://fasb.org/us-gaap/role/disclosure/RevenuefromContractswithCustomers
us-gaap:RevenuePracticalExpedientInitialApplicationAndTransitionQualitativeAssessment
parent-childhttp://fasb.org/us-gaap/role/disclosure/RevenuefromContractswithCustomers
us-gaap:RevenuePracticalExpedientFinancingComponent
parent-childhttp://fasb.org/us-gaap/role/disclosure/RevenuefromContractswithCustomers
us-gaap:RevenuePracticalExpedientIncrementalCostOfObtainingContract
parent-childhttp://fasb.org/us-gaap/role/disclosure/RevenuefromContractswithCustomers

Related Parent Concepts

NameRelation TypeRole
us-gaap:RevenueFromContractWithCustomerTextBlock
parent-childhttp://fasb.org/us-gaap/role/disclosure/RevenuefromContractswithCustomers