| Name | UpFrontPaymentArrangementMember |
|---|---|
| Namespace | http://fasb.org/us-gaap/2021-01-31 |
| Prefix | us-gaap |
| Data type | dtr-types:domainItemType |
| Period type | duration |
| Substitution Group | xbrli:item |
| Balance | None |
| Nillable | True |
| Abstract | True |
| Text | Lang | Role | Container role |
|---|---|---|---|
| Up-front Payment Arrangement [Member] | en-US | http://www.xbrl.org/2003/role/label | http://www.xbrl.org/2003/role/link |
| Category of deferred revenue by arrangement wherein all amount due is received from customer before delivery of goods or services, and revenue will be recognized upon customer acceptance of delivered goods or services. | en-US | http://www.xbrl.org/2003/role/documentation | http://www.xbrl.org/2003/role/link |
| Name | Value | Role |
|---|---|---|
| Note | Element is intended to be used for each reported period for which amendment from Accounting Standards Update identified in tin-part:Source_ASU_Number is not applied. | http://fasb.org/us-gaap/role/tin/transition |
| PublishDate | 2018-01 | http://fasb.org/us-gaap/role/tin/transition |
| Source | ASU | http://fasb.org/us-gaap/role/tin/transition |
| SourceName | Revenue | http://fasb.org/us-gaap/role/tin/transition |
| Source_ASU_Number | 2014-09 | http://fasb.org/us-gaap/role/tin/transition |
| elementCreationTaxonomyVersion | 2008 | http://fasb.org/us-gaap/role/tin/taxonomyImplementationNote |
| Name | Relation Type | Role | |
|---|---|---|---|
us-gaap:Asu201409TransitionAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/DeferredRevenue |