| Name | RevenueInformationUsedToDetermineTransactionPrice |
|---|---|
| Namespace | http://fasb.org/us-gaap/2020-01-31 |
| Prefix | us-gaap |
| Data type | xbrli:stringItemType |
| Period type | duration |
| Substitution Group | xbrli:item |
| Balance | None |
| Nillable | True |
| Abstract | False |
| Text | Lang | Role | Container role |
|---|---|---|---|
| Revenue, Information Used to Determine Transaction Price | en-US | http://www.xbrl.org/2003/role/label | http://www.xbrl.org/2003/role/link |
| Description of method, input, and assumption used to determine transaction price. Includes, but is not limited to, estimating variable consideration, adjusting consideration for effect of time value of money, and measuring noncash consideration. | en-US | http://www.xbrl.org/2003/role/documentation | http://www.xbrl.org/2003/role/link |
| Name | Value | Role |
|---|---|---|
| Publisher | FASB | http://www.xbrl.org/2003/role/disclosureRef |
| Name | Accounting Standards Codification | http://www.xbrl.org/2003/role/disclosureRef |
| Topic | 606 | http://www.xbrl.org/2003/role/disclosureRef |
| SubTopic | 10 | http://www.xbrl.org/2003/role/disclosureRef |
| Section | 50 | http://www.xbrl.org/2003/role/disclosureRef |
| Paragraph | 20 | http://www.xbrl.org/2003/role/disclosureRef |
| Subparagraph | (a) | http://www.xbrl.org/2003/role/disclosureRef |
| URI | http://asc.fasb.org/extlink&oid=121604090&loc=SL49130566-203045 | http://www.xbrl.org/2003/role/disclosureRef |
| Name | Relation Type | Role | |
|---|---|---|---|
us-gaap:RevenueMethodsInputsAndAssumptionsUsedAbstract | parent-child | http://fasb.org/us-gaap/role/disclosure/RevenuefromContractswithCustomers |