v3.19.3

Revenue from Contract with Customers ( Disaggregation of Revenue) (Details) - USD ($) $ in Thousands | 3 Months Ended | 9 Months Ended
--- | --- | ---
Sep. 30, 2019 | Sep. 30, 2018 | Sep. 30, 2019 | Sep. 30, 2018
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | $ 656,596 | $ 638,020 | $ 1,987,230 | $ 1,960,890
Operating Leases, Income Statement, Lease Revenue |  | 22,956 |  | 65,545
Operating Lease, Lease Income | 25,658 |  | 74,707 |
(Gains) losses from futures contracts included in product sales revenue | (17,625) | 24,355 | 41,504 | 70,140
Affiliate management fee revenue | 5,357 | 4,842 | 15,810 | 15,138
Revenue from Contract with Customer, Including Assessed Tax | 607,956 | 634,577 | 1,938,217 | 1,950,347
Service [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 506,432 | 488,775 | 1,473,629 | 1,392,960
Product [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 144,807 | 144,403 | 497,791 | 552,792
Product and Service, Other [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 5,357 | 4,842 | 15,810 | 15,138
Operating Segments [Member] | Refined Products Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 445,669 | 430,311 | 1,358,138 | 1,366,126
Operating Leases, Income Statement, Lease Revenue |  | 2,641 |  | 8,216
Operating Lease, Lease Income | 2,103 |  | 8,237 |
(Gains) losses from futures contracts included in product sales revenue | (17,061) | 24,253 | 39,761 | 64,558
Affiliate management fee revenue | 432 | 351 | 1,314 | 1,000
Revenue from Contract with Customer, Including Assessed Tax | 426,073 | 451,572 | 1,388,348 | 1,421,468
Operating Segments [Member] | Crude Oil Pipeline and Terminals Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 162,861 | 161,247 | 484,178 | 453,044
Operating Leases, Income Statement, Lease Revenue |  | 16,132 |  | 44,705
Operating Lease, Lease Income | 19,356 |  | 53,950 |
(Gains) losses from futures contracts included in product sales revenue | (564) | 102 | 1,743 | 5,582
Affiliate management fee revenue | 3,592 | 3,463 | 10,724 | 11,328
Revenue from Contract with Customer, Including Assessed Tax | 139,349 | 141,754 | 421,247 | 402,593
Operating Segments [Member] | Marine Storage Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 49,622 | 47,385 | 148,749 | 144,473
Operating Leases, Income Statement, Lease Revenue |  | 4,183 |  | 12,624
Operating Lease, Lease Income | 4,199 |  | 12,520 |
(Gains) losses from futures contracts included in product sales revenue | 0 | 0 | 0 | 0
Affiliate management fee revenue | 1,333 | 1,028 | 3,772 | 2,810
Revenue from Contract with Customer, Including Assessed Tax | 44,090 | 42,174 | 132,457 | 129,039
Operating Segments [Member] | Service [Member] | Refined Products Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 310,482 | 300,034 | 883,702 | 851,492
Operating Segments [Member] | Service [Member] | Crude Oil Pipeline and Terminals Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 150,926 | 145,118 | 454,103 | 409,329
Operating Segments [Member] | Service [Member] | Marine Storage Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 46,580 | 44,546 | 139,659 | 134,892
Operating Segments [Member] | Product [Member] | Refined Products Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 134,755 | 129,926 | 473,122 | 513,634
Operating Segments [Member] | Product [Member] | Crude Oil Pipeline and Terminals Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 8,343 | 12,666 | 19,351 | 32,387
Operating Segments [Member] | Product [Member] | Marine Storage Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 1,709 | 1,811 | 5,318 | 6,771
Operating Segments [Member] | Product and Service, Other [Member] | Refined Products Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 432 | 351 | 1,314 | 1,000
Operating Segments [Member] | Product and Service, Other [Member] | Crude Oil Pipeline and Terminals Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 3,592 | 3,463 | 10,724 | 11,328
Operating Segments [Member] | Product and Service, Other [Member] | Marine Storage Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 1,333 | 1,028 | 3,772 | 2,810
Intersegment Eliminations [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | (1,556) | (923) | (3,835) | (2,753)
Operating Leases, Income Statement, Lease Revenue |  | 0 |  | 0
Operating Lease, Lease Income | 0 |  | 0 |
(Gains) losses from futures contracts included in product sales revenue | 0 | 0 | 0 | 0
Affiliate management fee revenue | 0 | 0 | 0 | 0
Revenue from Contract with Customer, Including Assessed Tax | (1,556) | (923) | (3,835) | (2,753)
Intersegment Eliminations [Member] | Service [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | (1,556) | (923) | (3,835) | (2,753)
Intersegment Eliminations [Member] | Product [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 0 | 0 | 0 | 0
Intersegment Eliminations [Member] | Product and Service, Other [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 0 | 0 | 0 | 0
Transferred over Time [Member] | Service [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 506,432 | 488,775 | 1,473,629 | 1,392,960
Transferred over Time [Member] | Transportation [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 291,683 | 288,321 | 840,575 | 803,697
Transferred over Time [Member] | Terminalling [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 51,605 | 49,357 | 152,115 | 140,583
Transferred over Time [Member] | Storage [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 93,833 | 87,198 | 282,457 | 261,640
Transferred over Time [Member] | Ancillary Services [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 43,653 | 40,943 | 123,775 | 121,495
Transferred over Time [Member] | Lease Revenue [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 25,658 | 22,956 | 74,707 | 65,545
Transferred over Time [Member] | Operating Segments [Member] | Service [Member] | Refined Products Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 310,482 | 300,034 | 883,702 | 851,492
Transferred over Time [Member] | Operating Segments [Member] | Service [Member] | Crude Oil Pipeline and Terminals Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 150,926 | 145,118 | 454,103 | 409,329
Transferred over Time [Member] | Operating Segments [Member] | Service [Member] | Marine Storage Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 46,580 | 44,546 | 139,659 | 134,892
Transferred over Time [Member] | Operating Segments [Member] | Transportation [Member] | Refined Products Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 205,824 | 197,235 | 578,024 | 548,733
Transferred over Time [Member] | Operating Segments [Member] | Transportation [Member] | Crude Oil Pipeline and Terminals Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 85,859 | 91,086 | 262,551 | 254,964
Transferred over Time [Member] | Operating Segments [Member] | Transportation [Member] | Marine Storage Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 0 | 0 | 0 | 0
Transferred over Time [Member] | Operating Segments [Member] | Terminalling [Member] | Refined Products Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 47,483 | 46,213 | 136,435 | 136,135
Transferred over Time [Member] | Operating Segments [Member] | Terminalling [Member] | Crude Oil Pipeline and Terminals Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 3,176 | 2,528 | 13,145 | 2,528
Transferred over Time [Member] | Operating Segments [Member] | Terminalling [Member] | Marine Storage Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 946 | 616 | 2,535 | 1,920
Transferred over Time [Member] | Operating Segments [Member] | Storage [Member] | Refined Products Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 25,788 | 25,137 | 77,698 | 75,353
Transferred over Time [Member] | Operating Segments [Member] | Storage [Member] | Crude Oil Pipeline and Terminals Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 35,371 | 29,094 | 104,661 | 87,620
Transferred over Time [Member] | Operating Segments [Member] | Storage [Member] | Marine Storage Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 34,230 | 33,890 | 103,933 | 101,420
Transferred over Time [Member] | Operating Segments [Member] | Ancillary Services [Member] | Refined Products Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 29,284 | 28,808 | 83,308 | 83,055
Transferred over Time [Member] | Operating Segments [Member] | Ancillary Services [Member] | Crude Oil Pipeline and Terminals Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 7,164 | 6,278 | 19,796 | 19,512
Transferred over Time [Member] | Operating Segments [Member] | Ancillary Services [Member] | Marine Storage Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 7,205 | 5,857 | 20,671 | 18,928
Transferred over Time [Member] | Operating Segments [Member] | Lease Revenue [Member] | Refined Products Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 2,103 | 2,641 | 8,237 | 8,216
Transferred over Time [Member] | Operating Segments [Member] | Lease Revenue [Member] | Crude Oil Pipeline and Terminals Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 19,356 | 16,132 | 53,950 | 44,705
Transferred over Time [Member] | Operating Segments [Member] | Lease Revenue [Member] | Marine Storage Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 4,199 | 4,183 | 12,520 | 12,624
Transferred over Time [Member] | Intersegment Eliminations [Member] | Service [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | (1,556) | (923) | (3,835) | (2,753)
Transferred over Time [Member] | Intersegment Eliminations [Member] | Transportation [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 0 | 0 | 0 | 0
Transferred over Time [Member] | Intersegment Eliminations [Member] | Terminalling [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 0 | 0 | 0 | 0
Transferred over Time [Member] | Intersegment Eliminations [Member] | Storage [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | (1,556) | (923) | (3,835) | (2,753)
Transferred over Time [Member] | Intersegment Eliminations [Member] | Ancillary Services [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 0 | 0 | 0 | 0
Transferred over Time [Member] | Intersegment Eliminations [Member] | Lease Revenue [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 0 | 0 | 0 | 0
Transferred at Point in Time [Member] | Product [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 144,807 | 144,403 | 497,791 | 552,792
Transferred at Point in Time [Member] | Operating Segments [Member] | Product [Member] | Refined Products Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 134,755 | 129,926 | 473,122 | 513,634
Transferred at Point in Time [Member] | Operating Segments [Member] | Product [Member] | Crude Oil Pipeline and Terminals Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 8,343 | 12,666 | 19,351 | 32,387
Transferred at Point in Time [Member] | Operating Segments [Member] | Product [Member] | Marine Storage Segment [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | 1,709 | 1,811 | 5,318 | 6,771
Transferred at Point in Time [Member] | Intersegment Eliminations [Member] | Product [Member] |  |  |  |
Disaggregation of Revenue [Line Items] |  |  |  |
Revenue | $ 0 | $ 0 | $ 0 | $ 0

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_DisaggregationOfRevenueLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Amount of operating lease income from lease payments and variable lease payments paid and payable to lessor. Includes, but is not limited to, variable lease payments not included in measurement of lease receivable. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 30 -Section 50 -Paragraph 5 -URI http://asc.fasb.org/extlink&oid=119202524&loc=SL77919372-209981 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 30 -Section 45 -Paragraph 3 -URI http://asc.fasb.org/extlink&oid=77888421&loc=SL77919311-209978 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 270 -SubTopic 10 -Section 50 -Paragraph 6A -URI http://asc.fasb.org/extlink&oid=118952077&loc=SL77927221-108306 + Details
Name: | us-gaap_OperatingLeaseLeaseIncome
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition The total amount of revenue recognized for the period from operating leases, including minimum lease revenue, contingent revenue, percentage revenue and sublease revenue. + References Reference 1: http://fasb.org/us-gaap/role/ref/otherTransitionRef -Publisher FASB -Name Accounting Standards Codification -Topic 840 -SubTopic 20 -Section 25 -Paragraph 1 -URI http://asc.fasb.org/extlink&oid=77902458&loc=d3e39896-112707 + Details
Name: | us-gaap_OperatingLeasesIncomeStatementLeaseRevenue
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 4 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=118956577&loc=SL49130543-203045 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 606 -SubTopic 10 -Section 50 -Paragraph 5 -URI http://asc.fasb.org/extlink&oid=118956577&loc=SL49130545-203045 + Details
Name: | us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of revenue, fees and commissions earned from transactions between (a) a parent company and its subsidiaries; (b) subsidiaries of a common parent; (c) an entity and trusts for the benefit of employees, for example, but not limited to, pension and profit-sharing trusts that are managed by or under the trusteeship of the entity's management; (d) an entity and its principal, owners, management, or members of their immediate families; and (e) affiliates. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 946 -SubTopic 220 -Section S99 -Paragraph 1 -Subparagraph (SX 210.6-07.1(c)) -URI http://asc.fasb.org/extlink&oid=116637345&loc=SL114874292-224272 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03.1(e)) -URI http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227 + Details
Name: | us-gaap_RevenueFromRelatedParties
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Amount of revenue recognized from goods sold, services rendered, insurance premiums, or other activities that constitute an earning process. Includes, but is not limited to, investment and interest income before deduction of interest expense when recognized as a component of revenue, and sales and trading gain (loss). + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 22 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 32 -Subparagraph (a) -URI http://asc.fasb.org/extlink&oid=115929826&loc=d3e8933-108599 Reference 3: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 280 -SubTopic 10 -Section 50 -Paragraph 22 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=115929826&loc=d3e8736-108599 Reference 4: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 220 -SubTopic 10 -Section S99 -Paragraph 2 -Subparagraph (SX 210.5-03(1)) -URI http://asc.fasb.org/extlink&oid=116634182&loc=SL114868664-224227 + Details
Name: | us-gaap_Revenues
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition The net change in the difference between the fair value and the carrying value, or in the comparative fair values, of derivative instruments, including options, swaps, futures, and forward contracts, held at each balance sheet date, that was included in earnings for the period. + References Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 230 -SubTopic 10 -Section 45 -Paragraph 28 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=118932676&loc=d3e3602-108585 + Details
Name: | us-gaap_UnrealizedGainLossOnDerivatives
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Details
Name: | srt_ProductOrServiceAxis=us-gaap_ServiceMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=us-gaap_ProductMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=us-gaap_ProductAndServiceOtherMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ConsolidationItemsAxis=us-gaap_OperatingSegmentsMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=mmp_RefinedProductsSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=mmp_CrudeOilPipelineandTerminalsSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_StatementBusinessSegmentsAxis=mmp_MarineStorageSegmentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ConsolidationItemsAxis=us-gaap_IntersegmentEliminationMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredOverTimeMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=mmp_TransportationMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=mmp_TerminallingMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=mmp_StorageMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=mmp_AncillaryServicesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | srt_ProductOrServiceAxis=mmp_LeaseRevenueMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TimingOfTransferOfGoodOrServiceAxis=us-gaap_TransferredAtPointInTimeMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |