00:000 00:000 OC: OpenCore DBG-056-2020-02-09 is loading in Optional mode (0/0)...
00:002 00:002 OC: Boot timestamp - 2020.02.09 01:23:11
00:004 00:002 OCCPU: MP services threads 24 (enabled 24) - Success
00:006 00:002 OCCPU: MP services Pkg 2 Cores 16 Threads 32 - Success
00:008 00:002 OCCPU: Hypervisor: 0
00:010 00:001 OCCPU: Found Intel(R) Xeon(R) CPU           X5680  @ 3.33GHz
00:012 00:002 OCCPU: Signature 206C2 Stepping 2 Model 2C Family 6 Type 0 ExtModel 2 ExtFamily 0 uCode 1F
00:015 00:002 OCCPU: Detected Apple Processor Type: 05 -> 0501
00:017 00:002 OCCPU: Ratio Min 12 Max 25 Current 25 Turbo 27 27 26 26
00:019 00:002 OCCPU: Timer address is 408 from LPC
00:122 00:102 OCCPU: CPUFrequencyFromTSC  3324999715Hz  3324MHz
00:124 00:002 OCCPU: CPUFrequency  3324999715Hz  3324MHz
00:126 00:002 OCCPU: FSBFrequency   132999988Hz   132MHz
00:128 00:002 OCCPU: Pkg 2 Cores 6 Threads 12
00:130 00:002 OC: OcLoadUefiSupport...
00:132 00:002 OCABC: Firmware has 12567116 free pages (475724 in lower 4 GB)
00:134 00:002 OCC: GOP exists on ConsoleOutHandle and has 0 modes
00:136 00:002 OCC: Looking for GOP replacement due to invalid mode count
00:139 00:002 OCC: Alternative GOP status is - Success
00:141 00:002 OC: Requested resolution is 0x0@0 (max: 1) from Max
00:143 00:002 OCC: Requesting 0x0@0 (max: 1) resolution, curr 4294967295, total 8
00:145 00:002 OCC: Mode 0 - 3840x2160:1
00:147 00:002 OCC: Mode 1 - 640x480:1
00:149 00:002 OCC: Mode 2 - 800x600:1
00:151 00:002 OCC: Mode 3 - 1024x768:1
00:153 00:002 OCC: Mode 4 - 1280x1024:1
00:156 00:002 OCC: Mode 5 - 1400x1050:1
00:158 00:002 OCC: Mode 6 - 1600x1200:1
00:160 00:002 OCC: Mode 7 - 1280x960:1
00:162 00:002 OCC: Setting mode 0 with 3840x2160 resolution
00:189 00:026 OCC: Changed resolution mode to 0
00:191 00:002 OC: Changed resolution to 0x0@0 (max: 1) from Max - Success
00:193 00:002 OCC: Using builtin text renderer with 1 scale
00:199 00:006 OCC: Install console control (73EDD730/0/0) - Success
00:201 00:002 OC: Requested console mode is 0x0 (max: 1) from Max
00:203 00:002 OCC: Requesting 0x0 (max: 1) console mode, curr 0, max 1
00:205 00:002 OCC: Mode 0 - 478x133
00:207 00:002 OCC: Current console mode matches desired mode 0, forcing update
00:209 00:002 OCC: Setting mode 0 (prev 0) with 478x133 console mode
00:211 00:001 OCC: Changed console mode to 0
00:213 00:002 OC: Changed console mode to 0x0 (max: 1) from Max - Success
00:215 00:002 OC: Got 1 drivers
00:218 00:002 OC: Driver FwRuntimeServices.efi at 0 is being loaded...
00:320 00:102 OC: Driver FwRuntimeServices.efi at 0 is successfully loaded!
00:323 00:002 OC: Connecting drivers...
00:422 00:099 OC: Connecting drivers done...
00:424 00:002 OC: OcLoadAcpiSupport...
00:426 00:001 OCA: Found 10 ACPI tables
00:428 00:001 OCA: Detected table 50434146 (003030656C707041) at 775AB000 of 244 bytes at index 0
00:430 00:002 OCA: Detected table 54444345 (003030656C707041) at 775AD000 of 83 bytes at index 1
00:432 00:002 OCA: Detected table 54455048 (003030656C707041) at 775AA000 of 56 bytes at index 2
00:434 00:002 OCA: Detected table 43495041 (003030656C707041) at 775A8000 of 424 bytes at index 3
00:436 00:002 OCA: Detected table 54445353 (00004D5050757043) at 7758E000 of 85884 bytes at index 4
00:438 00:002 OCA: Detected table 54445353 (6963684161746153) at 7758D000 of 484 bytes at index 5
00:441 00:002 OCA: Detected table 54445353 (0000756164486F4E) at 77589000 of 1733 bytes at index 6
00:443 00:002 OCA: Detected table 4746434D (003030656C707041) at 775A7000 of 60 bytes at index 7
00:445 00:002 OCA: Detected table 54434656 (0000000000000000) at 7757A000 of 59012 bytes at index 8
00:447 00:002 OCA: Detected table 52414D44 (003030656C707041) at 77579000 of 104 bytes at index 9
00:449 00:002 OCA: FACS signature is 0 (0)
00:451 00:002 OCA: Exposing XSDT table 50434146 (003030656C707041) at 775AB000 of 244 bytes at index 0
00:453 00:002 OCA: Exposing XSDT table 54444345 (003030656C707041) at 775AD000 of 83 bytes at index 1
00:455 00:002 OCA: Exposing XSDT table 54455048 (003030656C707041) at 775AA000 of 56 bytes at index 2
00:457 00:002 OCA: Exposing XSDT table 43495041 (003030656C707041) at 775A8000 of 424 bytes at index 3
00:459 00:002 OCA: Exposing XSDT table 54445353 (00004D5050757043) at 7758E000 of 85884 bytes at index 4
00:461 00:002 OCA: Exposing XSDT table 54445353 (6963684161746153) at 7758D000 of 484 bytes at index 5
00:464 00:002 OCA: Exposing XSDT table 54445353 (0000756164486F4E) at 77589000 of 1733 bytes at index 6
00:466 00:002 OCA: Exposing XSDT table 4746434D (003030656C707041) at 775A7000 of 60 bytes at index 7
00:468 00:002 OCA: Exposing XSDT table 54434656 (0000000000000000) at 7757A000 of 59012 bytes at index 8
00:470 00:002 OCA: Exposing XSDT table 52414D44 (003030656C707041) at 77579000 of 104 bytes at index 9
00:472 00:002 OCA: Exposing RSDT table 50434146 (003030656C707041) at 775AB000 of 244 bytes at index 0
00:474 00:002 OCA: Exposing RSDT table 54444345 (003030656C707041) at 775AD000 of 83 bytes at index 1
00:476 00:002 OCA: Exposing RSDT table 54455048 (003030656C707041) at 775AA000 of 56 bytes at index 2
00:478 00:002 OCA: Exposing RSDT table 43495041 (003030656C707041) at 775A8000 of 424 bytes at index 3
00:481 00:002 OCA: Exposing RSDT table 54445353 (00004D5050757043) at 7758E000 of 85884 bytes at index 4
00:483 00:002 OCA: Exposing RSDT table 54445353 (6963684161746153) at 7758D000 of 484 bytes at index 5
00:485 00:002 OCA: Exposing RSDT table 54445353 (0000756164486F4E) at 77589000 of 1733 bytes at index 6
00:487 00:002 OCA: Exposing RSDT table 4746434D (003030656C707041) at 775A7000 of 60 bytes at index 7
00:489 00:002 OCA: Exposing RSDT table 54434656 (0000000000000000) at 7757A000 of 59012 bytes at index 8
00:491 00:002 OCA: Exposing RSDT table 52414D44 (003030656C707041) at 77579000 of 104 bytes at index 9
00:493 00:002 OC: OcLoadPlatformSupport...
00:495 00:002 OC: OcLoadDevPropsSupport...
00:498 00:002 OC: OcLoadNvramSupport...
00:500 00:002 OC: Deleting NVRAM 7C436110-AB2A-4BBB-A880-FE41995C9F82:boot-args - Not Found
00:502 00:002 OC: Setting NVRAM 7C436110-AB2A-4BBB-A880-FE41995C9F82:boot-args - Success
00:504 00:002 OC: Current version is DBG-056-2020-02-09
00:506 00:002 OC: OcMiscLateInit...
00:509 00:002 OC: LoadHandle is 75215298 - Success
00:511 00:002 OC: Translated HibernateMode None to 0
00:513 00:002 OC: Hibernation detection status is Not Found
00:515 00:002 OC: OcLoadKernelSupport...
00:517 00:002 OC: OpenCore is loaded, showing boot menu...
00:519 00:002 OCB: Performing OcScanForBootEntries...
00:521 00:002 OCB: Found 17 potentially bootable filesystems
00:523 00:002 OCB: Filesystem 0 (75B4AD18) named EFI (Not Found) has 0 entries
00:525 00:002 OCB: Filesystem 1 (75B4A818) named Boot OS X (Not Found) has 0 entries
00:528 00:002 OCB: Filesystem 2 (75ADCE98) named EFI (Not Found) has 0 entries
00:530 00:002 OCB: Filesystem 3 (75ACC418) named Preboot (Success) has 1 entries
00:535 00:004 OCB: Filesystem 4 (75121E18) named Mojave (Not Found) has 0 entries
00:539 00:004 OCB: Filesystem 5 (75121818) named Recovery (Not Found) has 0 entries
00:542 00:002 OCB: Filesystem 6 (75121098) named VM (Not Found) has 0 entries
00:544 00:002 OCB: Filesystem 7 (75AD4798) named EFI (Not Found) has 0 entries
00:546 00:002 OCB: Filesystem 8 (75AD4398) named Boot OS X (Not Found) has 0 entries
00:549 00:002 OCB: Filesystem 9 (75215298) named EFI (Not Found) has 0 entries
00:551 00:002 OCB: Filesystem 10 (7474F398) named Preboot (Success) has 1 entries
00:554 00:002 OCB: Filesystem 11 (746FED98) named MacPro - Data (Not Found) has 0 entries
00:556 00:002 OCB: Filesystem 12 (746FE718) named Recovery (Not Found) has 0 entries
00:558 00:002 OCB: Filesystem 13 (746FE118) named MacPro (Not Found) has 0 entries
00:563 00:005 OCB: Filesystem 14 (746C8B98) named VM (Not Found) has 0 entries
00:583 00:019 OCB: Filesystem 15 (74871718) named EFI (Not Found) has 0 entries
00:585 00:002 OCB: Filesystem 16 (7484A298) named Storage (Not Found) has 0 entries
00:587 00:002 OCB: Adding entry 0, external - 0, skip recovery - 0
00:590 00:002 DevicePath - PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x2,0x0)/Pci(0x0,0x0)/Sata(0x1,0x0,0x0)/HD(2,GPT,432717A4-844A-47C1-947D-D6A456F4759A,0x64028,0x3A321FE0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,5B82150B6D41784EAA8152133898B318)/\18AE0771-4513-42E2-9DF7-55167FCEDA94\System\Library\CoreServices\boot.efi
00:592 00:002 OCFS: Filename 18AE0771-4513-42E2-9DF7-55167FCEDA94\ has trailing slash
00:594 00:002 OCB: Adding entry 1, external - 0, recovery (18AE0771-4513-42E2-9DF7-55167FCEDA94) - Success
00:596 00:002 OCB: Adding entry 2, external - 0, skip recovery - 0
00:598 00:002 DevicePath - PciRoot(0x0)/Pci(0x7,0x0)/Pci(0x0,0x0)/Msg(34,010000000025385881B44F97)/HD(2,GPT,3ED56061-5671-4D01-89F0-664ECB6692F7,0x64028,0x3A321FE0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,800CEC38D6B55245B2D3A8EE34EA09CC)/\2FC5C288-3D16-433C-906F-DA8386F3057E\System\Library\CoreServices\boot.efi
00:600 00:002 OCFS: Filename 2FC5C288-3D16-433C-906F-DA8386F3057E\ has trailing slash
00:603 00:002 OCB: Adding entry 3, external - 0, recovery (2FC5C288-3D16-433C-906F-DA8386F3057E) - Success
00:605 00:002 Scanning got 4 entries
00:607 00:002 Trying to get label from \18AE0771-4513-42E2-9DF7-55167FCEDA94\System\Library\CoreServices\.contentDetails
00:612 00:005 Entry 0 is MacPro at \18AE0771-4513-42E2-9DF7-55167FCEDA94\System\Library\CoreServices\ (T:1|F:0)
00:615 00:002 Entry 0 is MacPro at dp PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x2,0x0)/Pci(0x0,0x0)/Sata(0x1,0x0,0x0)/HD(2,GPT,432717A4-844A-47C1-947D-D6A456F4759A,0x64028,0x3A321FE0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,5B82150B6D41784EAA8152133898B318)/\18AE0771-4513-42E2-9DF7-55167FCEDA94\System\Library\CoreServices\boot.efi
00:617 00:002 Trying to get label from \.contentDetails
00:619 00:002 Trying to get label from \.disk_label.contentDetails
00:621 00:002 Trying to detect Microsoft BCD
00:623 00:002 Trying to get recovery from \SystemVersion.plist
00:625 00:001 Entry 1 is Recovery at \ (T:2|F:0)
00:628 00:002 Entry 1 is Recovery at dp PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x2,0x0)/Pci(0x0,0x0)/Sata(0x1,0x0,0x0)/HD(2,GPT,432717A4-844A-47C1-947D-D6A456F4759A,0x64028,0x3A321FE0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,ADD7D55F46DCFB4C8582962EC95CCF3B)/18AE0771-4513-42E2-9DF7-55167FCEDA94
00:630 00:002 Trying to get label from \2FC5C288-3D16-433C-906F-DA8386F3057E\System\Library\CoreServices\.contentDetails
00:632 00:002 Trying to get label from \2FC5C288-3D16-433C-906F-DA8386F3057E\System\Library\CoreServices\.disk_label.contentDetails
00:635 00:002 Entry 2 is MacPro at \2FC5C288-3D16-433C-906F-DA8386F3057E\System\Library\CoreServices\ (T:1|F:0)
00:637 00:002 Entry 2 is MacPro at dp PciRoot(0x0)/Pci(0x7,0x0)/Pci(0x0,0x0)/Msg(34,010000000025385881B44F97)/HD(2,GPT,3ED56061-5671-4D01-89F0-664ECB6692F7,0x64028,0x3A321FE0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,800CEC38D6B55245B2D3A8EE34EA09CC)/\2FC5C288-3D16-433C-906F-DA8386F3057E\System\Library\CoreServices\boot.efi
00:639 00:002 Trying to get label from \.contentDetails
00:641 00:002 Trying to get label from \.disk_label.contentDetails
00:643 00:002 Trying to detect Microsoft BCD
00:645 00:002 Trying to get recovery from \SystemVersion.plist
00:647 00:002 Entry 3 is Recovery at \ (T:2|F:0)
00:650 00:002 Entry 3 is Recovery at dp PciRoot(0x0)/Pci(0x7,0x0)/Pci(0x0,0x0)/Msg(34,010000000025385881B44F97)/HD(2,GPT,3ED56061-5671-4D01-89F0-664ECB6692F7,0x64028,0x3A321FE0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,E52ADB81F341AE4CA4BF2A9166455CA9)/2FC5C288-3D16-433C-906F-DA8386F3057E
00:652 00:002 OCB: Performing OcShowSimpleBootMenu... 0
00:654 00:002 OCB: BootNext has not been found
00:656 00:002 OCB: efi-boot-device-data = PciRoot(0x0)/Pci(0x7,0x0)/Pci(0x0,0x0)/SasEx(0x0100000000253858,0x81B44F977074616C,0x0,NoTopology,0,0,0)/HD(2,GPT,3ED56061-5671-4D01-89F0-664ECB6692F7,0x64028,0x3A321FE0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,800CEC38D6B55245B2D3A8EE34EA09CC)/\2FC5C288-3D16-433C-906F-DA8386F3057E\System\Library\CoreServices\boot.efi
00:658 00:002 OCB: efi-backup-boot-device-data - Not Found
00:661 00:002 OCB: efi-apple-recovery-data - Not Found
00:663 00:002 OCB: Dumping BootOrder
00:665 00:002 OCB: 0 -> Boot0080 = PciRoot(0x0)/Pci(0x7,0x0)/Pci(0x0,0x0)/SasEx(0x0100000000253858,0x81B44F977074616C,0x0,NoTopology,0,0,0)/HD(2,GPT,3ED56061-5671-4D01-89F0-664ECB6692F7,0x64028,0x3A321FE0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,800CEC38D6B55245B2D3A8EE34EA09CC)/\2FC5C288-3D16-433C-906F-DA8386F3057E\System\Library\CoreServices\boot.efi
00:667 00:002 OCB: Predefined list
00:670 00:002 OCB: 0 -> Boot0080 = PciRoot(0x0)/Pci(0x7,0x0)/Pci(0x0,0x0)/SasEx(0x0100000000253858,0x81B44F977074616C,0x0,NoTopology,0,0,0)/HD(2,GPT,3ED56061-5671-4D01-89F0-664ECB6692F7,0x64028,0x3A321FE0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,800CEC38D6B55245B2D3A8EE34EA09CC)/\2FC5C288-3D16-433C-906F-DA8386F3057E\System\Library\CoreServices\boot.efi
00:675 00:005 OCB: 1 -> Boot0081 - failed to read
00:677 00:002 OCB: 2 -> Boot0082 - failed to read
00:679 00:002 OCB: Predefined list
00:681 00:002 OCB: Default DP pre-fix - PciRoot(0x0)/Pci(0x7,0x0)/Pci(0x0,0x0)/SasEx(0x0100000000253858,0x81B44F977074616C,0x0,NoTopology,0,0,0)/HD(2,GPT,3ED56061-5671-4D01-89F0-664ECB6692F7,0x64028,0x3A321FE0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,800CEC38D6B55245B2D3A8EE34EA09CC)/\2FC5C288-3D16-433C-906F-DA8386F3057E\System\Library\CoreServices\boot.efi
00:684 00:002 OCB: Default DP post-fix - PciRoot(0x0)/Pci(0x7,0x0)/Pci(0x0,0x0)/Msg(34,010000000025385881B44F97)/HD(2,GPT,3ED56061-5671-4D01-89F0-664ECB6692F7,0x64028,0x3A321FE0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,800CEC38D6B55245B2D3A8EE34EA09CC)/\2FC5C288-3D16-433C-906F-DA8386F3057E\System\Library\CoreServices\boot.efi
00:686 00:002 OCB: Default DP post-fix remainder - \2FC5C288-3D16-433C-906F-DA8386F3057E\System\Library\CoreServices\boot.efi
00:688 00:002 OCB: Matched default boot option: MacPro
00:690 00:002 OCB: Initial default is 2
10:697 10:006 OCB: Should boot from MacPro (T:1|F:0|DEF:0)
10:704 00:006 OCB: Perform boot MacPro to dp PciRoot(0x0)/Pci(0x7,0x0)/Pci(0x0,0x0)/Msg(34,010000000025385881B44F97)/HD(2,GPT,3ED56061-5671-4D01-89F0-664ECB6692F7,0x64028,0x3A321FE0)/VenMedia(BE74FCF7-0B7C-49F3-9147-01F4042E6842,800CEC38D6B55245B2D3A8EE34EA09CC)/\2FC5C288-3D16-433C-906F-DA8386F3057E\System\Library\CoreServices\boot.efi (0/0)
10:707 00:003 OCB: Matching <> args on type 1 0
10:710 00:002 OCOS: OS set: <null> Mac OS X 10.15
10:712 00:002 OCOS: OS set: Apple Inc. Mac OS X 10.15
10:742 00:030 Trying XNU hook on System\Library\PrelinkedKernels\prelinkedkernel
10:745 00:002 Kext reservation size 5242880
11:812 01:067 Result of XNU hook on System\Library\PrelinkedKernels\prelinkedkernel is Success
11:828 00:015 OC: Read kernel version 19.3.0 (190300)
11:868 00:039 OCAK: IOAHCIPort replace count - 1
11:870 00:002 OCAK: Patch success com.apple.driver.AppleAHCIPort
11:898 00:028 Prelinked status - Success
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               