| Name | DerivativeContractTypeDomain |
|---|---|
| Namespace | http://fasb.org/us-gaap/2020-01-31 |
| Prefix | us-gaap |
| Data type | nonnum:domainItemType |
| Period type | duration |
| Substitution Group | xbrli:item |
| Balance | None |
| Nillable | True |
| Abstract | True |
| Text | Lang | Role | Container role |
|---|---|---|---|
| Derivative Contract [Domain] | en-US | http://www.xbrl.org/2003/role/label | http://www.xbrl.org/2003/role/link |
| Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. | en-US | http://www.xbrl.org/2003/role/documentation | http://www.xbrl.org/2003/role/link |