v3.20.4

Leases (Future Minimum Maturities of Lease Liabilities) (Details) - USD ($) $ in Millions | Dec. 31, 2020 | Dec. 31, 2019
--- | --- | ---
Operating Leases |  |
2021 | $ 4,808 |
2022 | 4,527 |
2023 | 4,094 |
2024 | 3,560 |
2025 | 2,904 |
Thereafter | 11,230 |
Total lease payments | 31,123 |
Less: imputed interest | (5,384) |
Total | 25,739 | $ 25,255
Finance Leases |  |
2021 | 350 |
2022 | 333 |
2023 | 300 |
2024 | 276 |
2025 | 272 |
Thereafter | 1,609 |
Total lease payments | 3,140 |
Less: imputed interest | (1,104) |
Total | $ 2,036 | $ 2,034

X
- References No definition available. + Details
Name: | us-gaap_FinanceLeaseLiabilitiesPaymentsDueAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Present value of lessee's discounted obligation for lease payments from finance lease. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 Reference 2: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 45 -Paragraph 1 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977 + Details
Name: | us-gaap_FinanceLeaseLiability
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for finance lease. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_FinanceLeaseLiabilityPaymentsDue
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for finance lease, due after fifth fiscal year following latest fiscal year. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_FinanceLeaseLiabilityPaymentsDueAfterYearFive
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for finance lease, due in next fiscal year following latest fiscal year. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_FinanceLeaseLiabilityPaymentsDueNextTwelveMonths
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for finance lease, due in fifth fiscal year following latest fiscal year. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_FinanceLeaseLiabilityPaymentsDueYearFive
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for finance lease, due in fourth fiscal year following latest fiscal year. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_FinanceLeaseLiabilityPaymentsDueYearFour
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for finance lease, due in third fiscal year following latest fiscal year. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_FinanceLeaseLiabilityPaymentsDueYearThree
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for finance lease, due in second fiscal year following latest fiscal year. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_FinanceLeaseLiabilityPaymentsDueYearTwo
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for finance lease. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_FinanceLeaseLiabilityUndiscountedExcessAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease, due after fifth fiscal year following latest fiscal year. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease, due in next fiscal year following latest fiscal year. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fifth fiscal year following latest fiscal year. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease, due in fourth fiscal year following latest fiscal year. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease, due in third fiscal year following latest fiscal year. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments for operating lease, due in second fiscal year following latest fiscal year. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Amount of lessee's undiscounted obligation for lease payments in excess of discounted obligation for lease payments for operating lease. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 50 -Paragraph 6 -URI http://asc.fasb.org/extlink&oid=77888426&loc=SL77918701-209980 + Details
Name: | us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- References No definition available. + Details
Name: | us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Present value of lessee's discounted obligation for lease payments from operating lease. + References Reference 1: http://www.xbrl.org/2003/role/disclosureRef -Publisher FASB -Name Accounting Standards Codification -Topic 842 -SubTopic 20 -Section 45 -Paragraph 1 -Subparagraph (b) -URI http://asc.fasb.org/extlink&oid=77888419&loc=SL77918627-209977 + Details
Name: | us-gaap_OperatingLeaseLiability
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant