| Name | RevenuePracticalExpedientInitialApplicationAndTransitionNonrestatementOfModifiedContract |
|---|---|
| Namespace | http://fasb.org/us-gaap/2022 |
| Prefix | us-gaap |
| Data type | xbrli:booleanItemType |
| Period type | duration |
| Substitution Group | xbrli:item |
| Balance | None |
| Nillable | True |
| Abstract | False |
| Text | Lang | Role | Container role |
|---|---|---|---|
| Revenue, Practical Expedient, Initial Application and Transition, Nonrestatement of Modified Contract [true false] (Deprecated 2022) | en-US | http://www.xbrl.org/2003/role/label | http://www.xbrl.org/2003/role/link |
| Indicates (true false) whether practical expedient was elected under initial application of retrospective method to aggregate effect of contract modified before beginning of earliest period presented when identifying satisfied and unsatisfied performance obligation, determining transaction price and allocating transaction price to performance obligation. | en-US | http://www.xbrl.org/2003/role/documentation | http://www.xbrl.org/2003/role/link |
| Name | Relation Type | Role | |
|---|---|---|---|
us-gaap:DeprecatedItems | parent-child | http://fasb.org/us-gaap/role/deprecated/deprecated |