From dfd70b8d63ad99e93ac045c5e5b1603c4b46413e Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Fri, 13 Mar 2020 10:45:33 -0700 Subject: [PATCH 01/17] Cleanup Removed hack from Images Makefile. Fixed use of DEFSERCFG in various places. --- Source/HBIOS/Config/RCZ80_kio.asm | 1 - Source/HBIOS/Config/ZETA2_std.asm | 2 +- Source/HBIOS/cfg_dyno.asm | 2 ++ Source/HBIOS/cfg_ezz80.asm | 2 ++ Source/HBIOS/cfg_master.asm | 5 ++++- Source/HBIOS/cfg_mk4.asm | 5 ++++- Source/HBIOS/cfg_n8.asm | 5 ++++- Source/HBIOS/cfg_rcz180.asm | 2 ++ Source/HBIOS/cfg_rcz80.asm | 2 ++ Source/HBIOS/cfg_sbc.asm | 5 ++++- Source/HBIOS/cfg_scz180.asm | 2 ++ Source/HBIOS/cfg_zeta.asm | 4 ++++ Source/HBIOS/cfg_zeta2.asm | 4 ++++ Source/HBIOS/uart.asm | 12 ++++++------ Source/HBIOS/xio.asm | 4 ++-- Source/Images/Makefile | 4 +--- 16 files changed, 44 insertions(+), 17 deletions(-) diff --git a/Source/HBIOS/Config/RCZ80_kio.asm b/Source/HBIOS/Config/RCZ80_kio.asm index eeede184..8526fa8e 100644 --- a/Source/HBIOS/Config/RCZ80_kio.asm +++ b/Source/HBIOS/Config/RCZ80_kio.asm @@ -26,7 +26,6 @@ ; CPUOSC .SET 7372800 ; CPU OSC FREQ IN MHZ INTMODE .SET 2 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2 -DEFSERCFG .SET SER_115200_8N1 ; DEFAULT SERIAL LINE CONFIG (SEE STD.ASM) ; KIOENABLE .SET TRUE ; ENABLE ZILOG KIO SUPPORT ; diff --git a/Source/HBIOS/Config/ZETA2_std.asm b/Source/HBIOS/Config/ZETA2_std.asm index 5eeab428..7128d885 100644 --- a/Source/HBIOS/Config/ZETA2_std.asm +++ b/Source/HBIOS/Config/ZETA2_std.asm @@ -24,7 +24,7 @@ ; #include "cfg_zeta2.asm" ; -DEFSERCFG .SET DEFSERCFG | SER_RTS +UARTCFG .SET UARTCFG | SER_RTS ; CRTACT .SET TRUE ; ACTIVATE CRT (VDU,CVDU,PROPIO,ETC) AT STARTUP ; diff --git a/Source/HBIOS/cfg_dyno.asm b/Source/HBIOS/cfg_dyno.asm index 8a9f251b..368da1be 100644 --- a/Source/HBIOS/cfg_dyno.asm +++ b/Source/HBIOS/cfg_dyno.asm @@ -82,6 +82,8 @@ ACIAENABLE .EQU FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) ; SIOENABLE .EQU FALSE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) ; +XIOCFG .EQU DEFSERCFG ; XIO: SERIAL LINE CONFIG +; VDUENABLE .EQU FALSE ; VDU: ENABLE VDU VIDEO/KBD DRIVER (VDU.ASM) CVDUENABLE .EQU FALSE ; CVDU: ENABLE CVDU VIDEO/KBD DRIVER (CVDU.ASM) NECENABLE .EQU FALSE ; NEC: ENABLE NEC UPD7220 VIDEO/KBD DRIVER (NEC.ASM) diff --git a/Source/HBIOS/cfg_ezz80.asm b/Source/HBIOS/cfg_ezz80.asm index 08a777d6..a4d7a083 100644 --- a/Source/HBIOS/cfg_ezz80.asm +++ b/Source/HBIOS/cfg_ezz80.asm @@ -97,6 +97,8 @@ SIO1BCLK .EQU 7372800 ; SIO 1B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372 SIO1BDIV .EQU 1 ; SIO 1B: SERIAL CLOCK DIVIDER, RC2014/SMB=1, ZP=2/4/8/16/32/64/128/256 (X5) SIO1BCFG .EQU DEFSERCFG ; SIO 1B: SERIAL LINE CONFIG ; +XIOCFG .EQU DEFSERCFG ; XIO: SERIAL LINE CONFIG +; VDUENABLE .EQU FALSE ; VDU: ENABLE VDU VIDEO/KBD DRIVER (VDU.ASM) CVDUENABLE .EQU FALSE ; CVDU: ENABLE CVDU VIDEO/KBD DRIVER (CVDU.ASM) NECENABLE .EQU FALSE ; NEC: ENABLE NEC UPD7220 VIDEO/KBD DRIVER (NEC.ASM) diff --git a/Source/HBIOS/cfg_master.asm b/Source/HBIOS/cfg_master.asm index ea5d2680..d2fd3eb6 100644 --- a/Source/HBIOS/cfg_master.asm +++ b/Source/HBIOS/cfg_master.asm @@ -93,11 +93,12 @@ BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS ; UARTENABLE .EQU FALSE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) UARTOSC .EQU 1843200 ; UART: OSC FREQUENCY IN MHZ +UARTCFG .EQU DEFSERCFG ; UART: LINE CONFIG FOR UART PORTS +UARTCASSPD .EQU SER_300_8N1 ; UART: ECB CASSETTE UART DEFAULT SPEED UARTSBC .EQU FALSE ; UART: AUTO-DETECT SBC/ZETA ONBOARD UART UARTCAS .EQU FALSE ; UART: AUTO-DETECT ECB CASSETTE UART UARTMFP .EQU FALSE ; UART: AUTO-DETECT MF/PIC UART UART4 .EQU FALSE ; UART: AUTO-DETECT 4UART UART -UARTCASSPD .EQU SER_300_8N1 ; UART: ECB CASSETTE UART DEFAULT SPEED ; ASCIENABLE .EQU FALSE ; ASCI: ENABLE Z180 ASCI SERIAL DRIVER (ASCI.ASM) ASCI0CFG .EQU DEFSERCFG ; ASCI 0: SERIAL LINE CONFIG @@ -137,6 +138,8 @@ SIO1BCLK .EQU CPUOSC ; SIO 1B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=73728 SIO1BDIV .EQU 1 ; SIO 1B: SERIAL CLOCK DIVIDER, RC2014/SMB=1, ZP=2/4/8/16/32/64/128/256 (X5) SIO1BCFG .EQU DEFSERCFG ; SIO 1B: SERIAL LINE CONFIG ; +XIOCFG .EQU DEFSERCFG ; XIO: SERIAL LINE CONFIG +; VDUENABLE .EQU FALSE ; VDU: ENABLE VDU VIDEO/KBD DRIVER (VDU.ASM) VDUSIZ .EQU V80X25 ; VDU: DISPLAY FORMAT [V80X24|V80X25|V80X30] CVDUENABLE .EQU FALSE ; CVDU: ENABLE CVDU VIDEO/KBD DRIVER (CVDU.ASM) diff --git a/Source/HBIOS/cfg_mk4.asm b/Source/HBIOS/cfg_mk4.asm index 46f5301f..cd00fe1d 100644 --- a/Source/HBIOS/cfg_mk4.asm +++ b/Source/HBIOS/cfg_mk4.asm @@ -78,11 +78,12 @@ BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS ; UARTENABLE .EQU TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) UARTOSC .EQU 1843200 ; UART: OSC FREQUENCY IN MHZ +UARTCFG .EQU DEFSERCFG ; UART: LINE CONFIG FOR UART PORTS +UARTCASSPD .EQU SER_300_8N1 ; UART: ECB CASSETTE UART DEFAULT SPEED UARTSBC .EQU FALSE ; UART: AUTO-DETECT SBC/ZETA ONBOARD UART UARTCAS .EQU TRUE ; UART: AUTO-DETECT ECB CASSETTE UART UARTMFP .EQU FALSE ; UART: AUTO-DETECT MF/PIC UART UART4 .EQU TRUE ; UART: AUTO-DETECT 4UART UART -UARTCASSPD .EQU SER_300_8N1 ; UART: ECB CASSETTE UART DEFAULT SPEED ; ASCIENABLE .EQU TRUE ; ASCI: ENABLE Z180 ASCI SERIAL DRIVER (ASCI.ASM) ASCI0CFG .EQU DEFSERCFG ; ASCI 0: SERIAL LINE CONFIG @@ -92,6 +93,8 @@ ACIAENABLE .EQU FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) ; SIOENABLE .EQU FALSE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) ; +XIOCFG .EQU DEFSERCFG ; XIO: SERIAL LINE CONFIG +; VDUENABLE .EQU FALSE ; VDU: ENABLE VDU VIDEO/KBD DRIVER (VDU.ASM) VDUSIZ .EQU V80X25 ; VDU: DISPLAY FORMAT [V80X24|V80X25|V80X30] CVDUENABLE .EQU FALSE ; CVDU: ENABLE CVDU VIDEO/KBD DRIVER (CVDU.ASM) diff --git a/Source/HBIOS/cfg_n8.asm b/Source/HBIOS/cfg_n8.asm index 29ce4a5c..ae84317f 100644 --- a/Source/HBIOS/cfg_n8.asm +++ b/Source/HBIOS/cfg_n8.asm @@ -81,11 +81,12 @@ BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS ; UARTENABLE .EQU TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) UARTOSC .EQU 1843200 ; UART: OSC FREQUENCY IN MHZ +UARTCFG .EQU DEFSERCFG ; UART: LINE CONFIG FOR UART PORTS +UARTCASSPD .EQU SER_300_8N1 ; UART: ECB CASSETTE UART DEFAULT SPEED UARTSBC .EQU FALSE ; UART: AUTO-DETECT SBC/ZETA ONBOARD UART UARTCAS .EQU TRUE ; UART: AUTO-DETECT ECB CASSETTE UART UARTMFP .EQU FALSE ; UART: AUTO-DETECT MF/PIC UART UART4 .EQU TRUE ; UART: AUTO-DETECT 4UART UART -UARTCASSPD .EQU SER_300_8N1 ; UART: ECB CASSETTE UART DEFAULT SPEED ; ASCIENABLE .EQU TRUE ; ASCI: ENABLE Z180 ASCI SERIAL DRIVER (ASCI.ASM) ASCI0CFG .EQU DEFSERCFG ; ASCI 0: SERIAL LINE CONFIG @@ -95,6 +96,8 @@ ACIAENABLE .EQU FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) ; SIOENABLE .EQU FALSE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) ; +XIOCFG .EQU DEFSERCFG ; XIO: SERIAL LINE CONFIG +; VDUENABLE .EQU FALSE ; VDU: ENABLE VDU VIDEO/KBD DRIVER (VDU.ASM) VDUSIZ .EQU V80X25 ; VDU: DISPLAY FORMAT [V80X24|V80X25|V80X30] CVDUENABLE .EQU FALSE ; CVDU: ENABLE CVDU VIDEO/KBD DRIVER (CVDU.ASM) diff --git a/Source/HBIOS/cfg_rcz180.asm b/Source/HBIOS/cfg_rcz180.asm index d430084c..f09dc1d7 100644 --- a/Source/HBIOS/cfg_rcz180.asm +++ b/Source/HBIOS/cfg_rcz180.asm @@ -102,6 +102,8 @@ SIO1BCLK .EQU 7372800 ; SIO 1B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372 SIO1BDIV .EQU 1 ; SIO 1B: SERIAL CLOCK DIVIDER, RC2014/SMB=1, ZP=2/4/8/16/32/64/128/256 (X5) SIO1BCFG .EQU SER_115200_8N1 ; SIO 1B: SERIAL LINE CONFIG ; +XIOCFG .EQU DEFSERCFG ; XIO: SERIAL LINE CONFIG +; VDUENABLE .EQU FALSE ; VDU: ENABLE VDU VIDEO/KBD DRIVER (VDU.ASM) CVDUENABLE .EQU FALSE ; CVDU: ENABLE CVDU VIDEO/KBD DRIVER (CVDU.ASM) NECENABLE .EQU FALSE ; NEC: ENABLE NEC UPD7220 VIDEO/KBD DRIVER (NEC.ASM) diff --git a/Source/HBIOS/cfg_rcz80.asm b/Source/HBIOS/cfg_rcz80.asm index 59f86821..8087c810 100644 --- a/Source/HBIOS/cfg_rcz80.asm +++ b/Source/HBIOS/cfg_rcz80.asm @@ -106,6 +106,8 @@ SIO1BCLK .EQU CPUOSC ; SIO 1B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=73728 SIO1BDIV .EQU 1 ; SIO 1B: SERIAL CLOCK DIVIDER, RC2014/SMB=1, ZP=2/4/8/16/32/64/128/256 (X5) SIO1BCFG .EQU DEFSERCFG ; SIO 1B: SERIAL LINE CONFIG ; +XIOCFG .EQU DEFSERCFG ; XIO: SERIAL LINE CONFIG +; VDUENABLE .EQU FALSE ; VDU: ENABLE VDU VIDEO/KBD DRIVER (VDU.ASM) CVDUENABLE .EQU FALSE ; CVDU: ENABLE CVDU VIDEO/KBD DRIVER (CVDU.ASM) NECENABLE .EQU FALSE ; NEC: ENABLE NEC UPD7220 VIDEO/KBD DRIVER (NEC.ASM) diff --git a/Source/HBIOS/cfg_sbc.asm b/Source/HBIOS/cfg_sbc.asm index ab54d396..353b4796 100644 --- a/Source/HBIOS/cfg_sbc.asm +++ b/Source/HBIOS/cfg_sbc.asm @@ -72,11 +72,12 @@ BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS ; UARTENABLE .EQU TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) UARTOSC .EQU 1843200 ; UART: OSC FREQUENCY IN MHZ +UARTCFG .EQU DEFSERCFG ; UART: LINE CONFIG FOR UART PORTS +UARTCASSPD .EQU SER_300_8N1 ; UART: ECB CASSETTE UART DEFAULT SPEED UARTSBC .EQU TRUE ; UART: AUTO-DETECT SBC/ZETA ONBOARD UART UARTCAS .EQU TRUE ; UART: AUTO-DETECT ECB CASSETTE UART UARTMFP .EQU TRUE ; UART: AUTO-DETECT MF/PIC UART UART4 .EQU TRUE ; UART: AUTO-DETECT 4UART UART -UARTCASSPD .EQU SER_300_8N1 ; UART: ECB CASSETTE UART DEFAULT SPEED ; ASCIENABLE .EQU FALSE ; ASCI: ENABLE Z180 ASCI SERIAL DRIVER (ASCI.ASM) ; @@ -95,6 +96,8 @@ SIO0BCLK .EQU 4915200 ; SIO 0B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372 SIO0BDIV .EQU 8 ; SIO 0B: SERIAL CLOCK DIVIDER, RC2014/SMB=1, ZP=2/4/8/16/32/64/128/256 (X5) SIO0BCFG .EQU DEFSERCFG ; SIO 0B: SERIAL LINE CONFIG ; +XIOCFG .EQU DEFSERCFG ; XIO: SERIAL LINE CONFIG +; VDUENABLE .EQU FALSE ; VDU: ENABLE VDU VIDEO/KBD DRIVER (VDU.ASM) VDUSIZ .EQU V80X25 ; VDU: DISPLAY FORMAT [V80X24|V80X25|V80X30] CVDUENABLE .EQU FALSE ; CVDU: ENABLE CVDU VIDEO/KBD DRIVER (CVDU.ASM) diff --git a/Source/HBIOS/cfg_scz180.asm b/Source/HBIOS/cfg_scz180.asm index c37cc2d6..f1646cee 100644 --- a/Source/HBIOS/cfg_scz180.asm +++ b/Source/HBIOS/cfg_scz180.asm @@ -97,6 +97,8 @@ SIO1BCLK .EQU 7372800 ; SIO 1B: OSC FREQ IN HZ, ZP=2457600/4915200, RC/SMB=7372 SIO1BDIV .EQU 1 ; SIO 1B: SERIAL CLOCK DIVIDER, RC2014/SMB=1, ZP=2/4/8/16/32/64/128/256 (X5) SIO1BCFG .EQU SER_115200_8N1 ; SIO 1B: SERIAL LINE CONFIG ; +XIOCFG .EQU DEFSERCFG ; XIO: SERIAL LINE CONFIG +; VDUENABLE .EQU FALSE ; VDU: ENABLE VDU VIDEO/KBD DRIVER (VDU.ASM) CVDUENABLE .EQU FALSE ; CVDU: ENABLE CVDU VIDEO/KBD DRIVER (CVDU.ASM) NECENABLE .EQU FALSE ; NEC: ENABLE NEC UPD7220 VIDEO/KBD DRIVER (NEC.ASM) diff --git a/Source/HBIOS/cfg_zeta.asm b/Source/HBIOS/cfg_zeta.asm index 85e7f731..087a251b 100644 --- a/Source/HBIOS/cfg_zeta.asm +++ b/Source/HBIOS/cfg_zeta.asm @@ -66,6 +66,8 @@ BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS ; UARTENABLE .EQU TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) UARTOSC .EQU 1843200 ; UART: OSC FREQUENCY IN MHZ +UARTCFG .EQU DEFSERCFG ; UART: LINE CONFIG FOR UART PORTS +UARTCASSPD .EQU SER_300_8N1 ; UART: ECB CASSETTE UART DEFAULT SPEED UARTSBC .EQU TRUE ; UART: AUTO-DETECT SBC/ZETA ONBOARD UART UARTCAS .EQU FALSE ; UART: AUTO-DETECT ECB CASSETTE UART UARTMFP .EQU FALSE ; UART: AUTO-DETECT MF/PIC UART @@ -77,6 +79,8 @@ ACIAENABLE .EQU FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) ; SIOENABLE .EQU FALSE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) ; +XIOCFG .EQU DEFSERCFG ; XIO: SERIAL LINE CONFIG +; VDUENABLE .EQU FALSE ; VDU: ENABLE VDU VIDEO/KBD DRIVER (VDU.ASM) CVDUENABLE .EQU FALSE ; CVDU: ENABLE CVDU VIDEO/KBD DRIVER (CVDU.ASM) NECENABLE .EQU FALSE ; NEC: ENABLE NEC UPD7220 VIDEO/KBD DRIVER (NEC.ASM) diff --git a/Source/HBIOS/cfg_zeta2.asm b/Source/HBIOS/cfg_zeta2.asm index 19c48c62..0ea6c0eb 100644 --- a/Source/HBIOS/cfg_zeta2.asm +++ b/Source/HBIOS/cfg_zeta2.asm @@ -71,6 +71,8 @@ BQRTC_BASE .EQU $50 ; BQRTC: I/O BASE ADDRESS ; UARTENABLE .EQU TRUE ; UART: ENABLE 8250/16550-LIKE SERIAL DRIVER (UART.ASM) UARTOSC .EQU 1843200 ; UART: OSC FREQUENCY IN MHZ +UARTCFG .EQU DEFSERCFG ; UART: LINE CONFIG FOR UART PORTS +UARTCASSPD .EQU SER_300_8N1 ; UART: ECB CASSETTE UART DEFAULT SPEED UARTSBC .EQU TRUE ; UART: AUTO-DETECT SBC/ZETA ONBOARD UART UARTCAS .EQU FALSE ; UART: AUTO-DETECT ECB CASSETTE UART UARTMFP .EQU FALSE ; UART: AUTO-DETECT MF/PIC UART @@ -82,6 +84,8 @@ ACIAENABLE .EQU FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) ; SIOENABLE .EQU FALSE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) ; +XIOCFG .EQU DEFSERCFG ; XIO: SERIAL LINE CONFIG +; VDUENABLE .EQU FALSE ; VDU: ENABLE VDU VIDEO/KBD DRIVER (VDU.ASM) CVDUENABLE .EQU FALSE ; CVDU: ENABLE CVDU VIDEO/KBD DRIVER (CVDU.ASM) NECENABLE .EQU FALSE ; NEC: ENABLE NEC UPD7220 VIDEO/KBD DRIVER (NEC.ASM) diff --git a/Source/HBIOS/uart.asm b/Source/HBIOS/uart.asm index d29ccc46..220749d6 100644 --- a/Source/HBIOS/uart.asm +++ b/Source/HBIOS/uart.asm @@ -575,7 +575,7 @@ UART_CFG: .DB 0 ; UART TYPE .DB $68 ; IO PORT BASE (RBR, THR) .DB $68 + UART_LSR ; LINE STATUS PORT (LSR) - .DW DEFSERCFG ; LINE CONFIGURATION + .DW UARTCFG ; LINE CONFIGURATION .FILL 2,$FF ; FILLER #ENDIF #IF (UARTCAS) @@ -593,7 +593,7 @@ UART_CFG: .DB 0 ; UART TYPE .DB $48 ; IO PORT BASE (RBR, THR) .DB $48 + UART_LSR ; LINE STATUS PORT (LSR) - .DW DEFSERCFG ; LINE CONFIGURATION + .DW UARTCFG ; LINE CONFIGURATION .FILL 2,$FF ; FILLER #ENDIF #IF (UART4) @@ -602,28 +602,28 @@ UART_CFG: .DB 0 ; UART TYPE .DB $C0 ; IO PORT BASE (RBR, THR) .DB $C0 + UART_LSR ; LINE STATUS PORT (LSR) - .DW DEFSERCFG ; LINE CONFIGURATION + .DW UARTCFG ; LINE CONFIGURATION .FILL 2,$FF ; FILLER ; 4UART SERIAL PORT B .DB 0 ; DEVICE NUMBER (UPDATED DURING INIT) .DB 0 ; UART TYPE .DB $C8 ; IO PORT BASE (RBR, THR) .DB $C8 + UART_LSR ; LINE STATUS PORT (LSR) - .DW DEFSERCFG ; LINE CONFIGURATION + .DW UARTCFG ; LINE CONFIGURATION .FILL 2,$FF ; FILLER ; 4UART SERIAL PORT C .DB 0 ; DEVICE NUMBER (UPDATED DURING INIT) .DB 0 ; UART TYPE .DB $D0 ; IO PORT BASE (RBR, THR) .DB $D0 + UART_LSR ; LINE STATUS PORT (LSR) - .DW DEFSERCFG ; LINE CONFIGURATION + .DW UARTCFG ; LINE CONFIGURATION .FILL 2,$FF ; FILLER ; 4UART SERIAL PORT D .DB 0 ; DEVICE NUMBER (UPDATED DURING INIT) .DB 0 ; UART TYPE .DB $D8 ; IO PORT BASE (RBR, THR) .DB $D8 + UART_LSR ; LINE STATUS PORT (LSR) - .DW DEFSERCFG ; LINE CONFIGURATION + .DW UARTCFG ; LINE CONFIGURATION .FILL 2,$FF ; FILLER #ENDIF ; diff --git a/Source/HBIOS/xio.asm b/Source/HBIOS/xio.asm index 31a7d986..b1c15c3e 100644 --- a/Source/HBIOS/xio.asm +++ b/Source/HBIOS/xio.asm @@ -49,7 +49,7 @@ XIO_INIT: ; MINIMAL UART INIT ;OUT0 (Z180_CNTLB0),A ; -> CNTLB0 ; TRY TO IMPLEMENT CONFIGURED BAUD RATE - LD HL,DEFSERCFG ; SERIAL CONFIG WORD + LD HL,XIOCFG ; SERIAL CONFIG WORD LD A,H ; BYTE W/ ENCODED BAUD RATE AND $1F ; ISOLATE BITS LD L,A ; MOVE TO L @@ -65,7 +65,7 @@ XIO_INIT1: #IF ((PLATFORM == PLT_SBC) | (PLATFORM == PLT_ZETA) | (PLATFORM == PLT_ZETA2)) - LD DE,DEFSERCFG ; SERIAL CONFIG WORD + LD DE,XIOCFG ; SERIAL CONFIG WORD CALL XIO_COMPDIV ; COMPUTE DIVISOR TO BC LD A,$80 ; LCR := DLAB ON diff --git a/Source/Images/Makefile b/Source/Images/Makefile index 277ee494..4832dc37 100644 --- a/Source/Images/Makefile +++ b/Source/Images/Makefile @@ -73,9 +73,7 @@ blankhd: if [ -f d_$$d.txt ] ; then \ echo " " copying files from d_$$d.txt ; \ grep -v ^# d_$$d.txt | tr -d '\r' | while read file user ; do \ - hack= ; \ - if [ "$$file" = "../../Binary/Apps/Tunes/*.*" ] ; then hack=../../Binary/Apps/Tunes/Makefile ; fi ; \ - rf=$$($(CASEFN) $$hack $$file | sort -V) ; \ + rf=$$($(CASEFN) $$file | sort -V) ; \ echo " " $$rf ; \ if [ -z "$$rf" ] ; then \ echo " " $$file missing ; \ From 06b685df218696174228b7b4623c7997312414ac Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Sat, 14 Mar 2020 10:34:13 -0700 Subject: [PATCH 02/17] GitHub CI Updates Adds automation of build and release assets upon release. --- .github/workflows/build.yml | 26 ------------------ .github/workflows/commit.yml | 31 +++++++++++++++++++++ .github/workflows/release.yml | 51 +++++++++++++++++++++++++++++++++++ 3 files changed, 82 insertions(+), 26 deletions(-) delete mode 100644 .github/workflows/build.yml create mode 100644 .github/workflows/commit.yml create mode 100644 .github/workflows/release.yml diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml deleted file mode 100644 index 2eadb3ce..00000000 --- a/.github/workflows/build.yml +++ /dev/null @@ -1,26 +0,0 @@ -name: CI - -on: [push] - -jobs: - build: - - runs-on: ubuntu-latest - - steps: - - uses: actions/checkout@v2 - - uses: rlespinasse/github-slug-action@1.1.0 - - - name: Install Dependencies - run: | - sudo apt-get install libncurses-dev - - name: Build - run: | - make - make clean - rm -rf .git - - name: Upload Archive - uses: actions/upload-artifact@v1 - with: - name: RomWBW-${{env.GITHUB_REF_SLUG}}-${{env.GITHUB_SHA_SHORT}} - path: . diff --git a/.github/workflows/commit.yml b/.github/workflows/commit.yml new file mode 100644 index 00000000..7cdbe1a0 --- /dev/null +++ b/.github/workflows/commit.yml @@ -0,0 +1,31 @@ +name: Commit Build + +on: + push: + branches: + - master + tags-ignore: + - v* + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: rlespinasse/github-slug-action@1.1.0 + + - uses: actions/checkout@v2 + + - name: Build + run: | + sudo apt-get install libncurses-dev + make + make clean + rm -rf .git* + + - name: Upload Artifact + uses: actions/upload-artifact@v1 + with: + name: RomWBW-${{env.GITHUB_REF_SLUG}}-${{env.GITHUB_SHA_SHORT}} + path: . \ No newline at end of file diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 00000000..5e5fbaaf --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,51 @@ +name: Release Build + +on: + release: + types: published + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2 + + - name: Create Package Label + run: | + LABEL=`echo "$GITHUB_REF" | sed "s|^refs/tags/||"` + echo "::set-env name=PKGLBL::$LABEL" + + - name: Display Diagnostics + run: | + echo PKGLBL: "$PKGLBL" + echo Upload URL: "${{github.event.release.upload_url}}" + echo GITHUB_TOKEN: "${{secrets.GITHUB_TOKEN}}" + + - name: Build + run: | + sudo apt-get install libncurses-dev + make + make clean + rm -rf .git* + + - name: Upload Artifact + uses: actions/upload-artifact@v1 + with: + name: RomWBW-${{env.PKGLBL}}-Package + path: . + + - name: Create Package Archive + run: | + zip -r Package.zip . + + - name: Upload Release Asset + uses: actions/upload-release-asset@v1 + env: + GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}} + with: + upload_url: ${{github.event.release.upload_url}} + asset_path: Package.zip + asset_name: RomWBW-${{env.PKGLBL}}-Package.zip + asset_content_type: application/zip \ No newline at end of file From daf0430c6fb94d0360c0f6be313d869c45ab32ac Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Sat, 14 Mar 2020 10:50:34 -0700 Subject: [PATCH 03/17] Prerelease 36 General cleanup --- ReadMe.txt | 2 +- Source/ver.inc | 2 +- Source/ver.lib | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ReadMe.txt b/ReadMe.txt index 3140b02f..81fe8ff0 100644 --- a/ReadMe.txt +++ b/ReadMe.txt @@ -7,7 +7,7 @@ *********************************************************************** Wayne Warthen (wwarthen@gmail.com) -Version 2.9.2-pre.35, 2020-03-12 +Version 2.9.2-pre.36, 2020-03-14 https://www.retrobrewcomputers.org/ RomWBW is a ROM-based implementation of CP/M-80 2.2 and Z-System for diff --git a/Source/ver.inc b/Source/ver.inc index dda78577..8b15729e 100644 --- a/Source/ver.inc +++ b/Source/ver.inc @@ -2,4 +2,4 @@ #DEFINE RMN 9 #DEFINE RUP 2 #DEFINE RTP 0 -#DEFINE BIOSVER "2.9.2-pre.35" +#DEFINE BIOSVER "2.9.2-pre.36" diff --git a/Source/ver.lib b/Source/ver.lib index 870f44ee..69815624 100644 --- a/Source/ver.lib +++ b/Source/ver.lib @@ -3,5 +3,5 @@ rmn equ 9 rup equ 2 rtp equ 0 biosver macro - db "2.9.2-pre.35" + db "2.9.2-pre.36" endm From 1bdf833e2c26cad61b701e20fd6b3004995cb2a7 Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Sat, 14 Mar 2020 12:06:56 -0700 Subject: [PATCH 04/17] Build Script Cleanups --- Source/HBIOS/Build.ps1 | 4 ++-- Source/HBIOS/MakeBlankROM.ps1 | 4 ---- Source/HBIOS/Makefile | 5 +---- Source/HBIOS/blank1024KB.dat | 1 - Source/HBIOS/blank512KB.dat | 1 - 5 files changed, 3 insertions(+), 12 deletions(-) delete mode 100644 Source/HBIOS/MakeBlankROM.ps1 delete mode 100644 Source/HBIOS/blank1024KB.dat delete mode 100644 Source/HBIOS/blank512KB.dat diff --git a/Source/HBIOS/Build.ps1 b/Source/HBIOS/Build.ps1 index 32f97ded..b84902e9 100644 --- a/Source/HBIOS/Build.ps1 +++ b/Source/HBIOS/Build.ps1 @@ -201,8 +201,8 @@ if ($Platform -ne "UNA") "Building ${RomSize}KB ${RomName} ROM disk data file..." -# Use the blank ROM disk image to create a working ROM disk image -Copy-Item $BlankROM $RomDiskFile +# Create a blank ROM disk image to create a working ROM disk image +Set-Content -Value ([byte[]](0xE5) * (([int]${RomSize} * 1KB) - 128KB)) -Encoding byte -Path $RomDiskFile # Copy all files from the appropriate directory to the working ROM disk image cpmcp -f $RomFmt $RomDiskFile ../RomDsk/ROM_${RomSize}KB/*.* 0: diff --git a/Source/HBIOS/MakeBlankROM.ps1 b/Source/HBIOS/MakeBlankROM.ps1 deleted file mode 100644 index 8f9e9d27..00000000 --- a/Source/HBIOS/MakeBlankROM.ps1 +++ /dev/null @@ -1,4 +0,0 @@ -# Create a "blank" rom disk image, filled with hex E5 -# -Set-Content -Value ([byte[]](0xE5) * (512KB - 128KB)) -Encoding byte -Path 'Blank512KB.dat' -Set-Content -Value ([byte[]](0xE5) * (1MB - 128KB)) -Encoding byte -Path 'Blank1024KB.dat' diff --git a/Source/HBIOS/Makefile b/Source/HBIOS/Makefile index c28edb77..164d999a 100644 --- a/Source/HBIOS/Makefile +++ b/Source/HBIOS/Makefile @@ -31,7 +31,7 @@ MOREDIFF = camel80.bin game.bin hbios_rom.bin nascom.bin prefix.bin usrrom.bin \ SUBDIRS = DEST = ../../Binary TOOLS =../../Tools -OTHERS = *.img *.rom *.com *.bin *.z80 cpm.sys zsys.sys Build.inc RomDisk.tmp font*.asm +OTHERS = *.img *.rom *.com *.bin *.z80 cpm.sys zsys.sys Build.inc RomDisk.tmp font*.asm *.dat include $(TOOLS)/Makefile.inc ifeq ($(DIFFMAKE),1) @@ -48,9 +48,6 @@ N8_std.rom: ROMSIZE=512 %.rom: bash Build.sh $(DIFFBUILD) $(shell echo $* | sed 's/_/ /') $(ROMSIZE) -#ZETA2_std.rom: -# bash Build.sh ZETA2 std 512 - hbios_rom.bin: hbios.asm build.inc $(TASM) -dROMBOOT hbios.asm hbios_rom.bin hbios_rom.lst diff --git a/Source/HBIOS/blank1024KB.dat b/Source/HBIOS/blank1024KB.dat deleted file mode 100644 index ac034386..00000000 --- a/Source/HBIOS/blank1024KB.dat +++ /dev/null @@ -1 +0,0 @@ -ееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееее \ No newline at end of file diff --git a/Source/HBIOS/blank512KB.dat b/Source/HBIOS/blank512KB.dat deleted file mode 100644 index 9f83fa94..00000000 --- a/Source/HBIOS/blank512KB.dat +++ /dev/null @@ -1 +0,0 @@ -ееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееееее \ No newline at end of file From bbd1ce616833c4e28d0fcf793518321c033a8bbc Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Sat, 14 Mar 2020 14:37:18 -0700 Subject: [PATCH 05/17] Config File Cleanups --- Source/HBIOS/Config/RCZ80_mt.asm | 1 - Source/HBIOS/Config/RCZ80_wiz.asm | 30 ------------------------------ Source/HBIOS/Config/SBC_simh.asm | 1 - Source/HBIOS/Config/SCZ180_126.asm | 1 + Source/HBIOS/Config/SCZ180_130.asm | 5 +++++ Source/HBIOS/Makefile | 1 - 6 files changed, 6 insertions(+), 33 deletions(-) delete mode 100644 Source/HBIOS/Config/RCZ80_wiz.asm diff --git a/Source/HBIOS/Config/RCZ80_mt.asm b/Source/HBIOS/Config/RCZ80_mt.asm index 7006d750..bdd72e8d 100644 --- a/Source/HBIOS/Config/RCZ80_mt.asm +++ b/Source/HBIOS/Config/RCZ80_mt.asm @@ -28,4 +28,3 @@ ; SDENABLE .SET TRUE ; SD: ENABLE SD CARD DISK DRIVER (SD.ASM) SDMODE .SET SDMODE_MT ; SD: DRIVER MODE: SDMODE_[JUHA|N8|CSIO|PPI|UART|DSD|MK4|SC|MT] - diff --git a/Source/HBIOS/Config/RCZ80_wiz.asm b/Source/HBIOS/Config/RCZ80_wiz.asm deleted file mode 100644 index b61b2d0f..00000000 --- a/Source/HBIOS/Config/RCZ80_wiz.asm +++ /dev/null @@ -1,30 +0,0 @@ -; -;================================================================================================== -; RC2014 Z80 CONFIGURATION W/ WIZNET -;================================================================================================== -; -; THE COMPLETE SET OF DEFAULT CONFIGURATION SETTINGS FOR THIS PLATFORM ARE FOUND IN THE -; CFG_.ASM INCLUDED FILE WHICH IS FOUND IN THE PARENT DIRECTORY. THIS FILE CONTAINS -; COMMON CONFIGURATION SETTINGS THAT OVERRIDE THE DEFAULTS. IT IS INTENDED THAT YOU MAKE -; YOUR CUSTOMIZATIONS IN THIS FILE AND JUST INHERIT ALL OTHER SETTINGS FROM THE DEFAULTS. -; EVEN BETTER, YOU CAN MAKE A COPY OF THIS FILE WITH A NAME LIKE _XXX.ASM AND SPECIFY -; YOUR FILE IN THE BUILD PROCESS. -; -; THE SETTINGS BELOW ARE THE SETTINGS THAT ARE MOST COMMONLY MODIFIED FOR THIS PLATFORM. -; MANY OF THEM ARE EQUAL TO THE SETTINGS IN THE INCLUDED FILE, SO THEY DON'T REALLY DO -; ANYTHING AS IS. THEY ARE LISTED HERE TO MAKE IT EASY FOR YOU TO ADJUST THE MOST COMMON -; SETTINGS. -; -; N.B., SINCE THE SETTINGS BELOW ARE REDEFINING VALUES ALREADY SET IN THE INCLUDED FILE, -; TASM INSISTS THAT YOU USE THE .SET OPERATOR AND NOT THE .EQU OPERATOR BELOW. ATTEMPTING -; TO REDEFINE A VALUE WITH .EQU BELOW WILL CAUSE TASM ERRORS! -; -; PLEASE REFER TO THE CUSTOM BUILD INSTRUCTIONS (README.TXT) IN THE SOURCE DIRECTORY (TWO -; DIRECTORIES ABOVE THIS ONE). -; -#DEFINE PLATFORM_NAME "RC2014 (wiz)" -; -#include "Config/RCZ80_std.asm" -; -SDENABLE .SET TRUE -SDMODE .SET SDMODE_MT diff --git a/Source/HBIOS/Config/SBC_simh.asm b/Source/HBIOS/Config/SBC_simh.asm index dd7fad54..85600427 100644 --- a/Source/HBIOS/Config/SBC_simh.asm +++ b/Source/HBIOS/Config/SBC_simh.asm @@ -31,7 +31,6 @@ INTMODE .SET 1 ; INTERRUPTS: 0=NONE, 1=MODE 1, 2=MODE 2 HTIMENABLE .SET TRUE ; ENABLE SIMH TIMER SUPPORT ; SIMRTCENABLE .SET TRUE ; ENABLE SIMH CLOCK DRIVER (SIMRTC.ASM) -; DSRTCENABLE .SET FALSE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM) ; HDSKENABLE .SET TRUE ; HDSK: ENABLE SIMH HDSK DISK DRIVER (HDSK.ASM) diff --git a/Source/HBIOS/Config/SCZ180_126.asm b/Source/HBIOS/Config/SCZ180_126.asm index 9bb78400..851f3476 100644 --- a/Source/HBIOS/Config/SCZ180_126.asm +++ b/Source/HBIOS/Config/SCZ180_126.asm @@ -37,6 +37,7 @@ HBIOS_MUTEX .SET FALSE ; ENABLE REENTRANT CALLS TO HBIOS (ADDS OVERHEAD) ASCIENABLE .SET TRUE ; ASCI: ENABLE Z180 ASCI SERIAL DRIVER (ASCI.ASM) ; ACIAENABLE .SET FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) +; SIOENABLE .SET FALSE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) ; FDENABLE .SET FALSE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM) diff --git a/Source/HBIOS/Config/SCZ180_130.asm b/Source/HBIOS/Config/SCZ180_130.asm index 7ee6370d..b3f22265 100644 --- a/Source/HBIOS/Config/SCZ180_130.asm +++ b/Source/HBIOS/Config/SCZ180_130.asm @@ -36,9 +36,14 @@ HBIOS_MUTEX .SET FALSE ; ENABLE REENTRANT CALLS TO HBIOS (ADDS OVERHEAD) ; LEDENABLE .SET TRUE ; ENABLE STATUS LED (SINGLE LED) ; +DIAGENABLE .SET FALSE ; ENABLES OUTPUT TO 8 BIT LED DIAGNOSTIC PORT +; +DSRTCENABLE .SET FALSE ; DSRTC: ENABLE DS-1302 CLOCK DRIVER (DSRTC.ASM) +; ASCIENABLE .SET TRUE ; ASCI: ENABLE Z180 ASCI SERIAL DRIVER (ASCI.ASM) ; ACIAENABLE .SET FALSE ; ACIA: ENABLE MOTOROLA 6850 ACIA DRIVER (ACIA.ASM) +; SIOENABLE .SET FALSE ; SIO: ENABLE ZILOG SIO SERIAL DRIVER (SIO.ASM) ; FDENABLE .SET FALSE ; FD: ENABLE FLOPPY DISK DRIVER (FD.ASM) diff --git a/Source/HBIOS/Makefile b/Source/HBIOS/Makefile index 164d999a..6ee90216 100644 --- a/Source/HBIOS/Makefile +++ b/Source/HBIOS/Makefile @@ -10,7 +10,6 @@ OBJECTS += RCZ180_nat.rom RCZ180_nat.com OBJECTS += RCZ80_kio.rom RCZ80_kio.com OBJECTS += RCZ80_mt.rom RCZ80_mt.com OBJECTS += RCZ80_std.rom RCZ80_std.com -OBJECTS += RCZ80_wiz.rom RCZ80_wiz.com OBJECTS += SBC_simh.rom SBC_simh.com OBJECTS += SBC_std.rom SBC_std.com OBJECTS += SCZ180_126.rom SCZ180_126.com From 09c673fbd0035b52a6d4903433e7243dc2d75b41 Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Sat, 14 Mar 2020 21:44:51 -0700 Subject: [PATCH 06/17] Update RomWBW Architecture General refresh for v2.9.2 --- Doc/RomWBW Architecture.pdf | Bin 489973 -> 499960 bytes Source/Doc/RomWBW Architecture.docx | Bin 259374 -> 261840 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/Doc/RomWBW Architecture.pdf b/Doc/RomWBW Architecture.pdf index 0f81ccd704272ae1bbe40014b3672a64e11ff39d..85c847ffb18673a2768ca42facabb1034bc1cbc1 100644 GIT binary patch delta 168504 zcmafabwHd?lP2!&?(WV2!QI_mgS&??xCMd?65QQ2xVvj`hv4oKxFo;b+wa@kyZftV zx~r?|sqVL@-+FrPZipXyNaEBXIN9Pg=^=Ok@d5Y{Jbdx#Ea2Snql#3#WNc(=WSo3| z1sB^tg5w{-`H$cN34jyea{Z&i{f`RwKPuduAbW5+c%FY6dDubO;6zAd>>S*GN3wJ9 z)_(_g0Egh_1JOW|0`K+3WT;f;<>C=yM#1j_^3YrZ8U{;%UAum1fTBQtSVp_4^G`QF zCzx(Kdq!lP0FSOH$G2F|2au1MGzgk^U;1;pN9Lr%%o1pLr7sg{eyOJ23Spwdf&>%>7=Wr-{k%Ns15wBqpI}3ka$a=FHdP_;@WD6pChX?1G!wyb)@4YRE zIBglIWM)0c-BE%*Ss&bOKNM~5Y_2T_SO~nnl3R>5N9f0JVpK^BvidL9!7?O9(+`V2E0p}815G62YxCmb>@Px-lN1FZUX)=5D z?(qx=PnDuh5bh_VTs?ujEV- zu&WVfJ`5|Vi41Wsdqfj%m*cG%E%r`bltyQ~L*s%c3F?Asx3NLH&?%7Y+-#uFFz1l$ zT!4B%#bgCORjoN6l8E>z(3Ce`#<8JHO~FdH*PKv z5Vai0%_Ag)jNs<(YH8|#jNqLyk?EjJD2p+)NqI&5ygx42@bV<8R|&PZ4Iq}rQOUzx z#uefu*XsT`9;e><%j3=)1IOzE;OTNs=fcKw4vZ=HKQB9WlnVdi`E2vSW~937E6S?p zho?0IQ2ESEyTgGOFq)-noj2cWH~q+dP3ZtwKQpk~rT_RN{i)pnr|Xy0S0iH3`{@Py z=vM4O5Sv+VQ66yQOqxImi z*VJw(f7T*wUfM#DZ90DQuRf~_6*)p&p@>z3)p}kRpI>$wCh^8bg@NLTw zqX!GSlTOk|rB7as%1{EiE>9y`7K&7TP`#yAXIz<9^enBX>8#jf#juKj9c>O_+t==> z6kW&Dib$NYm)FnP^?Tl}^@k@{NVhsZ6}+FO^_Ld}=$&HfR<3=hGm9qE+IYu?dOcMp zxI$T_ z*8MU~Twb+n^;t%KJk{9daP~^Eoc&gT@dWqwQXJg7$Pkn*aO&b#K&+Wb(QHpkf=`|V zkwgK0T&S2UUx&X9C@Xt7UiM64%AL^D)!@H)X}!89KIKu#T9xcr%3epUL|>4ZYv8j9Im34}Ket@L>a*S?I#1)h!FW8Q{)=_QgA%M(_snZUH z_O)=zG0!h&*B&2p47k#(IYvjY$04Ua+P#ui5M*eo3#~mXDVs2>a`GjiASBF}wW+}3 z(sZvVZLFfa_;#nyyOK;iz{Qt{6Kgyola5KUtW%-AJ{9ymxQvlyLvnTd!?5f z4z_a(5GPBH_{II(uu;&G@mz1O-%iVXGlB{GF9i8L+yc)9`b$9G6aRR0y1oRAEKFs2 zbet$hzWY>A_;JJU@KxB3M-!-0i`SB=N5TQShY1Pn;j>e21PIB5hXch|dfQRF=*n;52 zuiMt2t+u`5O%%8_$>qB40>m`a*LG;d%VP8l?vr0dznN2si`m%v>Ge(?!$ooECQ?yD zC8hEr5M}}lxpfXYI}Q9ys`h8$x)oy0!<(?k?iXr+3KNgPVr#R78M$l4L}GfR#5+#X z-WPG|+q(jshngO)p5SYOPGFVUCgQqaXZArYm0Ww+8~cN#dF5h92lS}iMXw&4JqEgZ z)>%nZvIxi%^$Aq;OC2^d)YOnfl)?)N-Pae{vtLkt-BCDvI{Y~3B90!jG}6bxeSjH} z`N5J4*kGykC{XV4J@~tR|Bo}h!&RS>JA|w`wqcXR4MQevD(urH1J#5A%a%MkS;H0x zeKn3XXP(3X*8v#cE75kXX7T`l;3QcDdYkt@tB&wQlt|5?h2d_(+`$al4C83^v*M)f z;>?p|tR5Ro)Cj(5#CdN_u*ddDpl4GC09fEqM<>f+9Vq)zG$AoDr;tikuX~2mPPUh5 zUd{9kH9k+$fFikxrM(P;hhS(K%!1o25_0Sm$%1=l)|48{qg?vKYYUAZS?duilf{YW zcjof0kFjT;*NL66y?p&DzAEP&e!8z6G*Bfh@5C>R=xq4#os4hVaf+EvPR+|vR2G&MXifjq zPwGnl(e~VRc!K((NDI%eJ`voC_;0`mUyooN&Q9tSu!g1e*cY!|7ucciHMFMJq1|5m zOPR(b`9YJufO&RGBusauZgBqJX@lXHYW%&A&!Y%+$tM&fh9>tUCrq0@T$8kg7_MB> z)?fzHGw*QFGS$1)^p(&()No?-p0vzAI5W5z7_BgC9xLak39Z5YSpV8J@B#R6$*=G> z`0xvS((wAF))zIYUwb=Od~H0rCsG-|rzEv9ho5tLl0#oAlT|+9Mq@aSir#M5W{FUy zmv-|@n~id3L8I~r@3$2SPlcNC$#~RSbBd$_Kh5J~d}dQQT$<0gY)3DP(8mod2AtX0 zL41|!Nc>*EG5jdH|1;MK8v09jdI?kmW{|&^fstyK%Sr{6Uwfzb_^r3%$`e+#KUg(P zt#**5ryA{!o(laA{JC%&)sP96ZVE<7?9d9OkIXSI3mnOVv=FiN$!7DVF!8fE*xv(N z1pYKO*PnA2s}wgG&)-)ORw*7bUiK7r3kVI+8wwl*59jYA7#%ndD3@KKUW8Bs9DBFL4V5VS@v1ofW?Jiz(>gbhMqL_-qWLi@EJw^ zOBsTX^LLC2AYmqgKUPrr$oT#P1UnlUAMc;IJRtb~;7|aaFr$E6h)F>?^e`Y-CZ^x$ ze#i1VNvF(;|I;{6P!78ih=KKwVJ;{D8G!pw3PGbB%Ag506i_Rx2ndY=f$~qsKeO=% z!9Sn=hbTNj_nb)=-eNdZv*cSb9?nZY^#qIu;;0p|eCkPH8hZVm*LL0fz%pe4XxH@}x5Acf5W!V82c zs02b3Kmnce{gWSG0MqZuQK6y)jRJnpx`4=ksR{`xfp|WsV*j66`QO%Tgq1+1f~x;R zO0z_iK+!_~ufY)Pzo+{5!fz5*#`|xn{3rMS=_O@^5<&@dD)N6#DkMAm-{&L+hYAAa zH<~~yx&Mzv5D$bts6-VRBp6Ht!Nm!p5~Ttbr({sb*uId791BfjSk@*}rxcv#1A#x& z4b>7$D?#o_dGQYMJL8j+`{`rHdlj~$HbRd5>AbWb6+y8d2P9ryTs!U4_WQDF7f*(E z_RRgYS+0u=Sd^-?z9Vlu`?T0c9p7qXbakKsNlCn`!rwWL5S9CH(=0kmqWXfBg(H9i z+dWTr+dU&wYBEQ@xy@N5Br>g2m}*p=Cr`O>YP@|(u&oy<-zL&_h?n=^Wd>0H6nF>08Kn-sazZiU?B*TkX( z2)@>IR|Hgfd9XAj%(PUht+IGgac|=k=$Ev`!uBk4;T`972Q(aG3Fk$dPr$3W7esO; zpdX4z~w-0j?aHtCxla4al>NWK6WJq3gTd;o!aAgRD-M`^Gi_Y=F_{eam z$I00L@i}!TFiTJXLFQxdI2j!9%U5!;NLm{Hryv{w^1z6x1gernxRGUZvcy`#RJ>*f z-h2|-BbC###U;wOFZXP!>3WDLaP{{;!+5iJu)gbBG-^&#xqb%HRnQjciHTn8`=;tg zD_Yb`%!;&Z-6bQgUGZvSf1{_?QQdhIldE4G+c zfyuPvlgK|c^*B*^s250Fs>3pEm5kwYN1SD&|AFO0()9)Vf`l_gY+PRli2&wX{3fbF#if<;FgVA3z-HbIs0aC8e31QneFtG(d z?eptmFYV7~m`n>3>yXH5=sgO0i!PoBaSRV|v6k~uRS+$Hpv_OJ^?%)mZN2+^GV?eR zB~d|IvmqXbAPzApF7Byg`lIrIVdyEtf4o-C|3*flK}>d~&-Qk;CC3;$1;<=2v6X}S z%9_)AKn6-7gojXN4H#`8>aTCWLMk*9G$mY{3w|~tvwmZ+`|Mlr9#T$YI9u1#Y3ro~ zBo9#>6Yy;vRb8m(XYy#v+mwsQd>Nk-dXi~qz73(x$M%m{4j2AB|h!X46KDS%^Y1SM^i z(@x_cz+u6yzZA%sbdZp@g7?)SU(lz;oVw)5j~6vGWkWAhc)Gg%4k`%p`}= zwC(VoJRh6!mx14V=@i%O4@ZkG>9<_h5{Y)MJ}H*Kw6o(e*Nk*>Lh-*(b|o+=esC~Y zEEu32HBBg6$f(^1<6flsain z$<7FvPXsOzShd0~Vdoq?h8z=bEmNM4wYW<23_7N}_zF4BlO!(5X_7M7eFY8V(U+S+ z1`O=hF|sf0Ge=q*#cj^!p)Ev>F)`H~MeV+)kroTGwG?$CS}}ffvS6={;RLL&L--Yv znSUk}U&aP~GWb?5gu}d&0=ET&V&94)9I(iX)(Sl4D#mRA>?9)>XCXEsW3^ZnRyoy* zITK7bbQ&AzDSV+PO%9ASJqcJ>R^yfHbf$!f5UdMdq8#zR7+Zlccv@H;V<}m}nM9*x4AOi}szdN9)Fv5YD9GmU9qA#QlAoP((sO9|qP6E+8=0($ zc?VR}ONyLcX#H6x4Li=q!y6)`Ez{xQI=7>N^}#V?)iQmRms{J}&6^|LLq+&{o$gU= z8%cw_wgkcDQ0^&H!<4r2b4jnG*hh#=d@4_C>Vds_Y_rA2Pg-EECm4z%az=X#@s@@K|@9$wGV1u7m>-PHAo#9gd&cP;o|}v(oVwL*;s_`MOUn zuslVQ@S0okJxV1>g+q;K*U@yDTFtXxWL8;06~7 z(;+E?MU{F&YfQJd{W`O#BPw$8hI5~kyi%}GV zZ?6uVuAPv@n~I5EEgWg)uqvM*5Aj~jH#!G`I9ynJZm3fqW z$uR0#7Q18?#Md<>=*R*Hb(jExW07kq%6iFQjejvMuYo1{`--|ZWUhg?8ME~;$HtC$+^p4(ObT5vFHt>e)#)HkwzIn|LM?IQZIIO zG9Q1o#+A3;AjMPv@zd1H2%0aj&1S{PmhQwtXdZ0hI#B5D=ylFW?=Y~y&#C#YOul=! zh)zP5Su$B-f$_6)bLpN_f9~-*PxzK<_9z5qK2B!o1$9++DjfE^I`(teue`GCkCQhT zu;Ay0>6j9S!jd#R6&MJHn=*%=?UaT$zj~17ax!o$whFBrVi&Wn;qHV=*>akY&iNtOwg!kFG z#w(Wyb>ZnTIaC^Lx$%D%MTdCnwPq%gd@muMHFDa1ENy1Qk&|C)qcgdpfH&ctI1f_= z?&wr}d#sIZ5$xlrGB_*;s$>x5^9K~IC^SBY2j&xNl$t>4C%vZ3fzp>R->ie|)1#(r z^~9Llp-{|3ilp8aJxx{1i){iRwyFYhC@v(lr3V}Gzn^>+#5RdTH8t`P{as3WF@U=i7!tjG>k!u4kNuji0VZWNcGxf_gFh%8%Uz zNZv0vw%3Y{t}QdHMTU|d?PZcqO_LM~5eBTB%%cn>vT*|ha5nF~j;ae|cN#=tlrklX z%c=LhTt*Ylt?6{`z|cqRY|(AP^Uu)-_P&hk3Z`BO;ll4wxJ6=m^{^L&&(;R0LqW!s zSzR&)S{`%hDRqMN7AA96mXM=c>2Qts%b27|ONody29nFCiq1;h|nR7>%y28EBPBhYlG~ zU-aY+O5v@~7}COK>!%U^&K(i6IBzvuWQLf9ewt8IY4%!_>{_nYmYOEA+eQ;~Cp%F& z5yF5Pr!iKn3KVeD*?ZJ5)IqucAmgO=-`l#suiRL_I|rrJW!~!?YG-N+P4RWF>3X10XP$M5?vfD{(DXs~>visy9h;jlx@5_D z1p%H$>MFp?V7M456$ux{e_lF*FGUZlq{2=$xS5~b(WPBI;S67b+v;FN@%S7Oe}oR~ z8ZRT2=;XYP$H2=X-!6f(iy|7mZ$Z+l?ujlz4jjWLnyYnySGp11;y#;;dOizBr=AdAF;4C; zX%U#Xx$)DunMO+j&k6k&3I4FAGEqZ;k&_=QnjY4X2scM~Li4+NF87=qp2pBsw(bie zhYXEpXBfeRC#9Yb?JJcRJhHT&Y}3OjhdT(K8i0}CI58qz=8lJmjBV$I-$AI8G`D&m z0Uz`9$)R6bH_$sm*KeRJ#p64V*fyYjEQm8}71^62?TQ=9*lA69QK}>T7o=m@g-fU8 ztKvDOy+65)d%KN(!=0pER1FjQUYf(cQXOWg+ZcjmjBY{(CI79F+Nbc0iqOT!s+Kg6 zKNmQzKy<15aV6ibP^1Y}i=ZSKOu6;QsI!E0-))9i>g+mCF{ru~*Ba^oN8Z7-cZmPK z8kHPtO5&i2nWD4|ldWu@A&lpMsb~QOeE(A4&YP~ll{v$u#EDH9J)cy zEYqh?1t>!gU#rU{@b4(fXTmV>`|=$1tG$6;e9U3hmh^;o%&yEYA&=EbW!o~ihUQ2! zS)B5E^FRxA{7Yv1*?#Y?AQNY-Z?XsCQmkkB4L&v6jEZu#vxIdcJg*u`2w6F*lsNl& zqJG+;>#1P|Xt$py##(X>Ya_zrP6?XLWpe5C1*^9U4?XZAR^}a!a=V&9XueDAN+`gX zcjsgtyUK#(kd4m19Y3KvGcqiD@E{1|4YS%KqMS6#oanu5juTFH`r~WIf>jJYR~TcU za`*&aI+?;c9fw_wpjcumO%pHAhAf@u=efboD~s#j6zc0ftUI~gz3r|m9qUldF z%k=)k*_Zb=V%milKB~Ri9Xg*WA|`o{FiAGerijP7k)vPGyo_^h35WLV%OeV2(_pU4 z4jr!A${*8Vko@AyotnY4m^_p4-cWV6E!h853xC%f$Vo{-WU7(iTq(6A;8-c7#Nc?K zAF3=8{}fL&oHQM6%$+PO$vD`#|2F-hZ7m%woXl*I5qSQz{Qaa)#>4Zc_+d!)FTFe< z88z$QHN9FjY*2s(46gPcBY&?^{F{*!D-v*7P^$(5NK3sEmYw^rAyB*~Q;IVoI0{HY zLjZ!84HT$Bi^ctySN_+*ylj8MrUUJ1wEU?v{wD-N(4;22(%+jGtp5su>;Lf1`$y?N zAn^XZ#__KZ{{qOwNIYXKrCE z@3jA9vG~AHJF(oB++Vn3$#ebwp0rpSwe9%U+(q3fstUN_s3g2;=+%7d*mhR-^Hjm0 zy#)){>9_q!=xxlB%rAa=iVIajy~FQnb+iBH{+BQ1DXdDHvgCya(mS?K*P#V3e&mt_ z-u`HjY&WicZt@SmZuziznLE_iE{hd_&qw=THa})J-FSNn2uE6V8IBhUzbK9?_b&Tz z##-%{6=eh0KV)lKh6|kk+^#77`HrUjes?{fZ?=8GYWzyuKFW2KXEOe`wsQ_QF#C|# zFLg*csI@k&!b$9sW+`-*6$m@>^kYIHcU_C zbu&MpF$ve^us#hu+}OJVXRanF#THqxf$1AIvLrrl{bjmnJ;H3WP37I_->5d!2I#d0 zc}YYD6fT+`MR+j9e+tx4>4|RkurY_LDzfl?kd#+4=~hQnx~+rQj%$Xy+ydUTRUHZb zrdK$ay7&!48X7Hxn5kUEswc8dv1tNn3mwch>ak#4?myL9Gd5mluw#sj%Zt5i0WIUM zw^C4GNulF$^`MlDP;g`hf}NTgKClopzOsC$LNEddRK_o@+vtV=O#QtNon0fna7+w) z6V3Kq{*e5>RtHz(;5~oFc-r8o8OcpmkSHq&VJjgcykJ#(MBPZqdZ5ODd#tU>gyY@R z+qR$IsG;N#SJl&l~V!ADuw2$a}d^gvB%yoRbY>bygpqAa0R8)3_;sKRWs%J{9fjA z7{k)_~(#B_48&`Vy6H?xTPt%nSyeMye4KMUUahOWBQ zI;Vp%!PfT21By0H5SW*qK-5xws+BXxth2NL$jGtq%ry?*hfPatz3i|*YyswFO0!Q% zD5li_n?Jz}F8|KpIZ-tY0?1d(=CL2Ag5#Zn&TXW2dD7-3UHipGKI0j|xsoteYDnl$xJiu|Pn%s3|d>eG6 z4T$7SahjVYd2vDzoa}NmJKN6e1@azcoeM%J9rOKgkh*EVqotK8DYu-}LZ!b!anxdB)+aR83VH^_YO35bJC)|I;BLE{Zf7*|~CXkO53)bYN z;OV0e+Uti7d%|svVi$eV<{mR5fm~5zCMsjp5dfTl+DV4@=yoaAEeUoFdc{BNZHbvy z@B8l6CDf$d1?Su~N?BcHyTwdwoCa>69-KuHR@BK=hD(pb;M-pvy+Sg>N`Ww9Xd2tf z+*8#e$nC~dPJq->>Ij&lZfWjd)nzy`=CwTxi*|+G-vuCFH!sPKW5CqZ(`w4Vr9=?R zFk!MZ=;gkjN2K<1-Cvtax^$KC1oc@X@AnDnwPSb;1y|w^&EfeYI<7va!8BM+E<`iT zzoUS9=SZ#_$_>{y3_&eUZDw-|D7-MCOg^@RYPCh&m_XF?O*GCrh}qE=Hu_+w?0kCc zFiGhY!C{e0B103$(H#^uTgFa{`F8n~K#f+9ULnl@H$sx>P=xu51)0q1Z~YGmyCP>8 zhtEPeRYBb0ofSylgn9sHcwT7oHBQ9bSQhyG924^S+m>2kh9z^$M!vbl+4DWtk<)wM zyydiZLf~F?1zn%XG9JH*fQca&?`TBPvHVw|wAN#iOPh=*kBFa8-CNB0`!3vw*6%O9 zmW{IC28QKyhda%ZG#MSrEk8{#fT#P)^UJ3?pV5lS*WmH#ln$pWW}AZ~*@;#ugWc@Z za)W;cVGtMUo(NHnrjn*KbA-y4CUH|2#JDcvQ38qls0(i{PO6B^&O)tU`sbceNZbSi zFz9%e_@yv@jU$Q^KD0lMsZm2WlALrHzty?5kl7@Q+w2bP=gbX{RRo`Fty~w{c889g zYV1Il##}xSd^*?COqT8Fkx;jHtQmrFW7L8komqM@Ns1F3(h5dEiS^#AIUsx;ZPnl- z+y#y>mo;e#^@%ZE@H7~VR%zMkGH(WD8Wc(!KL4`#m9RE=q5c(k>BRpQ7#A;TrkZT# znhMF4aueDqP_G}r9(@tF4K6|Mcdt+*9k;eeF?o?d$?z)M|R>)S8n^6e=VFyu(k z#c^4BR|LKSG6ft);_2(Y=m+Yr{H-_udZI$Q``>IO)l2X|xa23s*o< z(+mW7p9a4?wrkI$1Bx4qeYI^t0-*zh20N7420>W6U`1_wZ3DYF3Zg}1rNW~RfWjRE zzhKmr8q9?ah!R-5R%`Bbj&3Tp)3Vq+lK9ZSC+j8}0AE9(&#nX6)DPl+%`9~|KKr?zH)M6`C zRLIn>q8F>j)%0m}QI$$XhO%q!0DDuPZt7JYko%pQrMrm{3*s!TECatlM6e)$H#dkp z8%Ud^p(EM3r_VJ72Z%+nH7WvA$B4XTVCcW26F|a=p{EoU8T;+2It+!0|A4TSP1hASo)|f0!K}|BlbS-qC}te6z^!u ze9My~1(?+m667nGL#j1?**W=_7n$&tn8n@aKA2&vO^{@3y%b3nHcJB+(og3gWy~)r z%`{8Et(3#$~tG=^v?3T_fGVlL9UiesyD?xdFrtn<7rm!%Q2CC9}Y6r?*qB*???^q?sE=k(5)HPo+D zgP+I{(Gwi~<{mKhdD5z>ndO3xnsgL6`t|AhwW7n-QXx?Zok9nlv9<((qV=fRQ|GFY zJ4U91hSa{_I?{W}BI~FWD zvxn$ZCDKXq?_W&Qy4a`$-EpVQ)td_d|2GGrID4|k{m4nySJpK8bBvvO`WCYN^#Fmf3 zYlThaa0Y>yK3NoXJVK@^vuk;wI&$W#!DKbWf8UE#%baH$)(3nOwkO-IZeozm+0zm? z$IT!qYuG>mqHg+HaBPv>Y7OeF3Vvai=!I4CGM}HZD(Qx_8a%{IDM=bALFy?4eq+Dq zqMtorV5c?aYEs90r0kK-;VG>nmi35axMq)`Q0t|gCbH0L zt?A$*Fy*%6sBDnJ_;BN1su3OF!Me>uUFsmiAbU}V58r57s~Mt94qq!kMV?bS9?Lvb z%~oa4*u~*G5T!r#7&*stPbTRQ6pCEz%Pb9NPF}ELsg>0C3a;ey%ue|Qv%3~Y>^)^> z{OLnDjL!)ow<*OFS~I!OMXb~Duhufb%Lr^GAm_2)@fDKi7{BA@3F*+r(LAEU)iF0w zgKy>c8~>IOD($FOvr z$yMWNr4_Q0H~LO#;;E0m6a1>qrE~uIC+gz~0{xNsLGmMyza;fz^=PULKT=1B^x=gQ z0~JVU2hKP$1rmJZnik~}{F*)~(R-GYU`bNuX*j<-DjRGVjh(6^G(8q!SNcB^Y zR*5qFa4=41=*)xZ& z;f3BD`Qq3nLp*}3zH#hQ%3XecKmdLup{iGh%W7K?ALrx9pH9~9ps^zsaJQN&#=k70 zg~Tf^9ipq9@yPHU=OoN+`c5ehkV@8Stj0Rw_EkS;KA2~~yE$=2fIeuFjw*(e)yq9kC$ zf=2&KwKo)VM_4&h4FFGFMxj)M6x#78WO1w0>~Ag)>uXR4OB3<#ODu7kd$_n(wIL4z zG~jrq*W`lu>sa)y*+$L4wh)jBOeED4hPIpZx!^ukNF=arh~YC6lCpDT_nfJ|cYqo5 z*thvol1~R6&A0F_YIT{9>O!W+)3its85KUmJ@3wZI5|`P>h#t&m90O$Q*1?Yl=F}y z7bRz|1~H4COaRm+7h~H?%6|MqpGm{i`R?T`;cQ=qJD9$ zHoXPtJXhW)x)JNKlJ=c$St4y*I0kh?b3{BZE=rL8G+-k zRbd2zF{y^K7gEdoXC^XWG54yCa(Tnv*5x<37~ifmY>*mr ziifUt`#p*s4smibjBJ>v)tEC38MuM=CR#M_XB5Xxn@V25N*LmO(6Y}E=B(={)fsoI zqN_C4`jg5!@dA?0@fJ4J&(fdZN?mT|p!O zvU73p{(A|rQD@b0RSNAhZVvEUxKLbRIa#r|JOPid5XpT# zGf&QJ{*0n>@pynPA`~j2lz1{?xU&=WLVspWd@~u z$qyVe2l+ZQGan&!Yau6Iol7zpQGSXJA)NJu&ZV%)Q zR3AHB;cyIiaEc^CnwL>$b6ZS0=pYhE#a>m0k1de+~`BY>Oz2)@t}+UxPq4nYVdm zgdeNXpj%n%ymm9&%nDXms4{Q^>795)9A^n|89`7uRo7T`5%EB=zl-<)ej!hTnR)I) zjai!EeNsBCZnG4Mq(LKTn?vCvP+K)ld+7^JdLFs{73f1u<{vX6tEQp@CF=s)ZLatk z0Uq<~1w$$vRd4Lv{%(;+zrC_6K##mO^%&)H)dut6t*&nPwF!CnrXOu8`|MGDt7zMs z1u@j@A>xp&*St~9*~m~L9Gq~F$`pFj?zZ>4wQcueiSjl-8;$rwDp6)W0bDj|70Z>pF6@^qFp)>{P#ggbFN7@~<5=s7-hbuT020fe@jAq{deS%}2Z#t{ z@Ah%8JDS=s@`unH^1PMM3&}ES%3d}l^Cs15WIjb9U5zYqCi-=^j^x$(6y08k50!{v z)uCoWvZ%0VL5$R?4>b%2kI|Oklhri5@haQd0kv7LR0(V#Fm9U|t_@1;hbC+#OTYP` z1}`&lkVyI38}SI8tV1DwyrO#Eg_^^hhP0`=jmxGP z0tkVDMd-2u+p8Xx0j*(i+K$<{3+`DRZ%Wb}x7OFM?CX%V@w48Z&m$ox907k=mR7N> za>_-7!%7dUgQdl1c($+Si&2`dz0ZVHp35U%s~FOGZ?;2Hlty}r$uHz5xflDs8YZ*P z`qUa!MqZI~4ft;cASgG(xh$MD2kn5BTp+$NU&GxbLnMi8_HAXIn+eHf(t<_QyooRk zcn_~GgY)1aJ69nb-_F+?Jet6HG>dj4@;eopl>mykvP2{6hgJ#mb~zuapzLWEcPRzG z=pd(4=B(Syje+CANwY}zZ+iCo0J$~0^x3uh3H5>_+ROTCZJkA-^T+)PN>g)}YoO%W z8+5Glp;Ay=8>`0IHpK!1uHL=mN+Z5-gh_cWuWA)inm&%vOUaB19O1PB*lX*4FLHAD zuP^=^)+o(BCS9XmC?n^*VJvq|u$T!AAuYn4K(HA-xDtu68Ha#HsRw1hB=B#*yPec4OD zQX|)KX(Tkpe3VA#TT6pofX;{Rq<`2t_`K&*z>rBT=?}p66t?y*l&H8-QthJ!h}JG$ z#bSDdZp`4$1N)0&dsJ9WPaHVS?;*^hBd!(SZ0cC5kKTcYj?HL^36JN?m@Hx`xn1^>fJfxdxoK+_snAnTwe2p%>NUm|hJxCHobK8lay-+xU0@==56 zZ&moe!e6FQEu?~+y`@iPqN!FR1ys-I&Mk^ugaXLu@^VFBz{EMbI@><6g281ZwHAA- z=|X|8ZLFWyPjzNgIUY9|So(|^b+oqHtTGwn%HQ8CoHaRoSMD)Gb;<@q^ny|dH2D>J+0>z8-=mLUV2o+-ecj$uajuUq8u$tg$StZc)M z{b;u#zA9WcVHdU6pYZ1|_e0+Vc`lXiWwJ4zj#h8#vp=G)`T#zq z8N<|PJ07fM{_6jk@^)I31zYcD*gNH!1)Pj(9}u{A18U*k7%vTVWoLJQqx%DdUyLpG zUG|`ijI}US5Dz}fr|;|hs2L$O}9dK zWCL?%|1Vy19g3paGh3dQK$xAO`h|>7zX-2t!_z-CXP#{-k_#bhGCL2CZZLf&0jS!h z?N`SPK;Lx?!^enMT4UPjgP*4~Jn* zgnpbPGr%q-94n+E39&{*3HB6wpv%Pqi z)fgWvXW3cg5p_Hym@V2|EuYG9^BULmNN+6Kw^i{iIyqG#?H|9!a6DTPuf1tuLJr zU1#~kX6u)$KO^$F9KgT4LQMnvgeEQ_1gUb|beZlip#?9w9v z{Vo6qI|nD%OCkMcLjNB)$PI;upK73koHdjG>1w(b|OF89UG40gg% zpZn3GC7_rGTD%Bt!nUb==FNjBtZ2RdhdgD1kiI>UKy(wB{q>1Y{sRlu57iwXA|d6&}BFiz6;;O^QDf(`PP3_s2J| zV9^3Kg&39w1lvIK-Kb6A?k`-7EXE(RD41WIv?LAtI5E`W>$ppH>}(0_#0?tPDY9Ah zVdr^{xoi1+BG{TJnYVdt<(HJm^=qS_VYQ-3P z(ND&ZS(dV;;3lTarRTA3oo97zGIbVuktnFIE-o2u^bB#%(0QeSZQa&v<(w4 zf|n|?w%@SuIT_1|WO>4D<=yjqN6w^7Ozq=>U>y7{#|Y}VyLK_i)wrT|h126)RYbkoCiMm?5zyhlIT|gQk(|lNyupq_%z8a< zAQ~IVMZ&xDY?;e|I&mi64&UI1zl*YewIxwc=8}A=8b$iLISzCn)+S7IrX|u}IXcCWr0pYf*XM_;*4kB2@W$VRc%%_V zE$51GQt&f@UBP;2f2F$-=ObM@mogJ_2shdD&R%qgl5~#*8qgvkb7DDiq`a_j!WnbB zb8vIfb+}lkt1FNLz9R3!eRR!x;85%?M4dRMG^A&*%vT#o@sFjlcc(Zmj8MRnyu6U{ zi=LT&f@{<-3sADaW?W(4!Rp#sOj7V8vbXXVqveMG$laG{V()|p7lHTfU6smrv_<$N z;$zcNnE^u~kOburo{F=Wn1#Piupc8LQ<*CWumq~Wbxv{#O*u;!EE}=P9{_t7h|kcN zA2NfJDMaq8%eX8@gvkY(a6@U1;zLA4kD>B~0-A3LDJT)Q9X_=Upv?(`(kCAh1L7KR zA{-T3TTiv#BLQtXPs(n7n2!w)Vzs8ftM-SVgy(pH2n%K+Kjnc)6DJj-g!j*zO!%Eq zu@58{Cn8{x&{j6SeLT?H;6ElP{9=FI-HV44Zu4W382>M_-myEgXbZQEZQHhOS8UsM zQt=y9Y}>YN+qP|^f>V3n54W9te#2^OwmF~CpFSXoF_9dB07j4z_8czwQA^l<(ZFye z-b41##;S{hJm$aZUt}HJD`^?^TXdGNhB4U z&^KXwPyp*9mHjq9_JlOi_Vv2jqn3Howz7I z@=`MLd~Qt*7EVWx4_Vut${ej|Ebh>-d9nc)shDlZ5eAlxZ6_%6D&hKuTjN z%f?CAP9gtU(=ssgp_G$R<(S|mx?5}$sa{e#+yq9}2`@%a7oyOmq#7nNNR_nhP@d!_ zEHTOm{~3xnIkz%#&U94+E^oMlHnk%PFnkrHq})0leGFn0N?VkXPbMn72^oDzKwR_O z1m+|xg%8+?I@w!=E3jR#X(9c@TFM-o94ljUB3nk$egW zWS?9tqYhI4PqITTqlu5OF`{Xkf|#rF8s@}`%iVRpk!N3lOe9-oXpbjVr4quu$DojE z-@geMIyw$^158SkVgU-0$}s2!4YxJX#rqezk!(C@Tr)1b@|Wrr^ez%3VC=%ZcQD{y z*bYYQuPKBsMIWp5G7xS2)q?dI>JQ-ynUqgx=7=yvyUwgxNDZ+vEZeGpI9%Y`uXoGO z(AU?9?r=Z;r=vY7d#`W`+F3&Wdi*~>Xm$_?SzeXxF{W2o& zMAZ6mww&G%N~p~=W0-{5=`yqP(xBjc7Ga(fA1lN-;Mhu8_F(!P0X5h=Y~64#@XOIz zu2W8K4G(Z3EO7o7-@- zEe=%f27Y!3lde+z(Xz_pdJ9*@v_LHl99-vaUJ^}dkd)nJZGR2bP1Sn)IsY;M#{`EM z2XlYwbB-IR*`*yauC+@hQ%8Crk-T83`@_f?PheM;;T{Wp3Zs`$?RGV7My7aBIN3gY zv$^^d3cO5&0Me%uX$W3)yFZVT>cwkNzo1P-Ur-Pt^xL|JrCp@fB?AmKY;1)5^Aysh zu=M2Fblk{Qe|ZuZ%0gKetnWhbBeFm4Wh~v0*hoJxgQVgpt@Xj$^`zvj6P(EpwM8I% z6a48-?a9$9Lolur?s5st&Ll<8vh8S$i!<|r&4HB_0Yrul3n4jNo!Y0#-;Zw>d&m#j zYqg(S!w*|19RiCa84+g9kWMBiRZr_(R9SY6WHIFPfEN}iVkJ#r;9ZAi)b{29TphL7($xvIzNuElN_UCqrsd?vy*-$uK68{VI+rnB^{U!q_Z(o|3e zSEFr9iEz)BW`wY0R;mI`R3bW)ysgN)kbq#oNz(j)IcJ0ka5~3)-zST&0DX{1A^MT) z4(2hx4o>HvrCW%#lNg07Gm?-9ro`sF1mNQSS)*kF7yCe>hw4Kog3()KhsE6@I|d&z6&LsKuwo~@Nq4J>g)cKN>sdU@OcB30=oDzF$2EV-+LWW~(3^D& zbh?nh55lr_r+f9%HK>R~j38nqZ0b-1Bf>6-=q=}BYmqRK^W>N*HoiW)Wl}hb^xW4 zj1df8BBATwIlA2L^==PAQyZzf;cP>Ne^ zW01RwwUmX=xpnL~IluMV0BR{L7-8lJk?J6KWnK$^9EYnHL^lBo;&xrPCdF1h1s$tA z_P4WRZ~i$W|M;#nBKn44QXRz^x!lh(v9lV_6X&!^w9fX)lLWr;-_1O$@uy3xN*GDk zD%=qjLHPCiD1XXpj%8+~3kWV6icuuQ^#v$w&O&aUsk3q@c&mf7kgkED>n#m652>Zz z5d%9{ApYeg7{LD}X#a~M!~A~;@JOQ6f7;QixQVr}aL~*g{{?&hQMEsXn5kU^z(k4e zNo{Bx|4lyruh4`ukyw))z{F#UU0Ej87T`-yi2sN3rwU=6EschmVF&RxBwuXNg$3e+w(E@uD8Yp#?LYcxWB~ z5Vvd5UrK6GKWK=(Svj9TB%khH4?klxhhxxPHC1E<39@TCR7o|cVxq9VL)~TuhPA=d z>|cG*iTUiLk+9%3q}9~%H+P9beWIY@f?t}dcYSNY*I;?lln5ZmeYsXtJ|9P)e_vR9 z*4R_^C{wI(GBf=O0SBR(HpC191(90-U4RGU7Qpf~CoU&ZV)RPD-GuT%6Fw&PA=Lhl zbDzE=W;f@pl$?g+n+_Z3M?KvmTz6i;@5$*mKD_E-Q&2_{k4v>vcUfa-lF3yVAIBR0 zWNB|jl;XEe3$0v?VVpZ5Q!uQz2B0Djw6Z=gy5lqG-CAe?^*kx18pXst3l=eeWTd1S zeMzSi8%^rn{z+8M;0A%rgZKw8-n4iSBc?Sp@axbY@o9I+R3~s|MyGKzrAWKx{!R-= z{M&KlC7?hfW^aa5%J{=j(Twqxwr#kfiA=o~v{jRH<}uwqdk00Hc)M1jj|MSlVwAi% z>r2P`N2uF?QU4M;>FQZjMb0Y#srWr7gZ2^ck_AUFJss@6?rwo4-D3-mjGG8lidsvc zD4OFdo;(u5)uV^cO*9^{eY1Go!#Ppzp8f|FL4@YoW-{imJRagTjp#N&bUSg}tYD*h zA4##zng1j@>@xOj<9gr!JGm~o5B~_a&1U!x=yV~e3csms)?`C(bq^Ns#IdV*st4cKij>%!@HuE?{LL#Pk zaV=BxFf2UX{^U9Sb-353SF}{h!JGsVcyPx+g)*qoKud8dRFhU5Z++-q%hEQ%IfGc7 zzBrV6vzrF6`0)ec?abdDwt`Xfq#Mx5|5B7IQ?^+Wu{QD*IjuKZw3hDvPS>si(>2+tVsj#OSi@OjO z$VevAAhf=ZG9;lNJw`M{?!9QaEd)?X{H@pP3|%!Hk-r@PaCm$JofCxigcsg}lcBNh zo?$#ElYt-Vp22VTFg2YTA^+nmZff1yb+06Vqa#y`!RDey98i&`=!X}JsbegJcB?W} zi&gHG`)4)FPP3S}LnBVIc91)+KirAkQG=XJ##jTdLj%Jpg^wz2Bk%Fx=wlaqa`Xh8 zEU4kT;N2*IU}=?J6)Ad>W*+IIP*w~G)(LW=vs<`;Yd$qh%qf9Ot$o`iOM0XF#Bw+k z8Y98$PAFqsTYr($nu5J9y|WTG(;xT>LF&g}mk}9tmw*}CclOs}4%llLs<{5lBwiot zOjy;iY_3a9VpuvwzgAG5|7!2y7@BCBGNW#Gc6KG;jW%UuijcVi5!^Sq_&PLefrQsp zbTmH6H$~B>2|^d@>8%UUN>p$#m{42Zqa+arSFMU=2i*Y0rjz;;3<$@}Wniv!B7Bt07|<1s(|%Kz z*gq`*ia`u(1*R&EH_<>XJ}yT2ELTTj0V;P$|EhwL4}9%yr-$WIPsc%B^bl3j{Azsv zdiSz`+Iz&=bZWd$;M!dhk&YbF!Jce}h-M-(kr6}W5aG_aTew;pzZ@Tb_}!gNT{f6p zt)xqmEHFbVgpc?(H@S$Cp;Q>>aYI*e?)C$KuWtN$hAG@lQhdxvTc@3PXtlL@n?@T# z<}|y{bQF8Oo|!C3iFkmJM8nhsPiWS##vUgrSmX{+KZulEp&x>RvY)6_HGxuDg{@;} z^t5}bEIz=}R~4k}Tat%^P0`Bu*e}^K7b#x)r?`+R5uQg~uJ+t>*ER1wg3gZOySoyA z8}NM|-GhP0I7fLKqr{LYp7e*#O$d}RK6x+qcX%K%E)t0h?@7a@aCzu#~JQwUdM@dM6H+QW+$VwoMUQC(L(%$WjO7I*otZzXKQ}bKAMZD{!$pf^S=UHQSxG>>NG@ zRZE!gjO9L>OHB=BZCz&>@{CaXDfy9n)MgxoQU(I!0&Pp_J{J4A;+}8Dkw(sta z8sy99R`7(L^vJ*R036qb;x_1n?^xkshImg!i(ryv<6RxbSk7F}WlQZ#DS(5Bb;7HM zm=RCXN(%MqRW-I`g0u+Njf5X}TT3WYq|BGQ&heJgT%PX|42qg8S#zei5*=H`B<@2- zD1fMH*k5|7xUgbgLgx$E?7Zb6-08AkvP~|BX8t!iFtMVL7Fr8lkD}S!l)vE51Jd73 z-e57+SG7rSk!NmKW|18A9_px&j;hAj%41Fm^q^N`AiWE6aR!UpM5o-+8jhz~HBB9N z*j(OP154>Ea>RTu-_N^0n5$}=-mf+G~7 zC&gZ>$?qLat1$1L|3Lq4J6B6LqB_DE*FB}BFLiJw+G;o);c-&|U#c3Y8g9d#$6Zco z;sV0tslnSwn(ktXU}i(4E26HU1{JY&pTkLmy>L=meoMd3N8p|@D#tGyNd z(1Eciuq`J`#Q+9Cl@sWhHd6Y8`91>kgMBIU;M>d0*JGN|Su?(G*PiMPBH|!?;Wrqs zt=d+-`6;bNz34RcXR#P3gResNJTJZ2FngyZexc;d^EX?%!sU_E(sX_oca(`oTP&0m zZ@?Sz-_$O;muSgJ?P8OAflh~@c%zSM8mOC9io8;=t=I$P=-WBy)fpr;pBU5U{tWrs zW|`H0RNxd0-0Cd;JtpBL&~2=Ayn3oji6jrWTh9|1O{aw7i7k1#OJ<7CN%Sr5cK$PZ z(T+X4S8v5ctebf*5f0KMn&L2r_xcGHiTGul(j9F4kucaNq884oRN>E%V;9T7%Gy4+ zfWn8IlT`?i5B*q}d<3Pg$duJv-!HFnnX%ubjtn~2HlfEzjOv5WA|hB=mbv0;9*yDe zS_qxYbqoB_?E6(N!ifvK8_c1_n=A3(uP>^LqRW z_Q|D&yo1;%-|%ndTfv(A-!(}ZsRG|0z&SStIfs{TU&o$Mz1@FyWcJOxjwkMTP5swM-b#kHD}>mum(IVCRU317Mj)Ji1ew512@t06 z*k=eu=DV^)jMQHP+U=T{>>>6=q3dh6>ZghbM33#4GlU*c=a^=lu92>1W6ePcY)#vhPPt$$V6`h7kC3(Nlw-kWj$ zQCwUv{6gOWu?s{c;z~ym)F(9 z3b%k2o62d^ff+{gtJ%fGFv+)CB<4s>nANJV^!ZXs13%-+#l*+V#l(Bw{y%$41NIoD zlprVKvUPMPN?ACB+G=E!l0K(wAIWOM{_8&((Z+aX|1ysnW8Rh@tytfPEbD5pJZ^kXNQIS|KkrGvp0BI^q?wDHey~{B-}0@wrrw0z9M*>clsLn zVL=T>=xMx~ykOQO159j}IH~(=8}4wx``BaVuqH22z=D1OuaA?6t4uQ!CBp!qi3_#m zKMW!>ytZBS`Kh`k9(aUzM)lxrV*wFIDGM&^if4WzOBl6J;F6>qBN;wW=s{EBYI!~& zf98VK4rm4Hbi`WhQ#SoU}A#B5dFviu21}&eRJ^3(i9V1p27jtKfs-jE#do0%XC0%M<}sqXU%T z;IWY5thV|E9~%qQ%Y#q9XkPScYlnu6TNQFhH2>`{ni>(uA|)X6OpEI^ta&-{*?235hc5j zhiC$04?&0@sg4DzB5A#BZm2JoL7s+q4D*)(N9p6 zLxWrsq!jd5+DENI!tTQdiqxLFxXyZ@0TAUM;eowR?Bx;!lPUpFV+K4?p_#L#y1KK` z95clel|X*G0p}KkhgtpWB94cZh{uN=gd^Q$^$hmfv)lh!Bq`sK@AA4X!`hp_f_c6h zAuKh9R?>lYlCJoj7(d`GfGos@BI5(>C$0s;m&qexdM-w0kLSrHLO?TmOcf(0;PTtl zjM=T~sx4Mj{74<}qVn3FJL`_(q$5k3K10C`Bj0vT)n+WsYvJJKvlVj(ZDEcX1E(of z5aZHX?`i_$@K0M-O|m8gth{`9$XMjxD;+wu=Merz#U?e?0Bmx1u8=@?`cT`2^|1zE z&_G4;PTB=6C7C_`NS4?Iyy$HN6Gtx7w|i8vNHSE@;@$zCCeVwpnsiN{v{)?o7(?pp zpYi6V3{;<5^#;znX=GF$xJQ}qwUUd$6_${QG?I;W@}?Q`^J0+(pZTSc${nO9?){my zG)4qov@j^*|KS7r%tp+Ep%i5NYiew82dQkXE!bKoh5{?nco2w`FuXyB@PwK)%28sp&XE?~O6lvz*? zUj{(-<2%L&9}X}tfmol#NQy}(0BTNX;)fo{+qzZHZP^%D&+dM#%nh0ud(J$%p#Oqq zhf(?WbRO%9a=e*)v*uzK-fCTK^;>J4HyeSXxfK@V#g9v z9wgv_=P29@a+U+4U1m0Uq(*hKyg?9vx9E8eB>(dOUA8AUaRiDRpB;TQlZ}je;`j^v z=u1*DK$RF1Tv&rI^)AiAGFQZ$k6tr)bnUj8p18SPvr)l2bOUk^6_KLi;16bdP|qn@ zk09?4tvnTAM+9nkIDpCz^vjvxl|ar#upPj+c^h=YlVy3ak%Ynj>%^;6;cTLM$4!~) zHs7=^zeGZ3_qCLAsmQVXGG!rWsF=U4Tf8?J(yudGSsJ0kG3%`s=%!LKGWFL;FcuKU zmi1G(u&`bKA=X-Up>X;6a+a~fX>mQ?d6rKxwD5ys&GHhaG*vf@OLCE5`F(aXIym5q zYfrNt>=?-cZJlU9snNED4jw`E=E;AAVN_@n(yOaPpvp5Zh}*SnSZ3Qt9+wJM65PB_ z*KIQT+a;1-T-QQR|9h%GwLhN65tfI{|HHEJ3K4FzW1uJNl7RrtXBQJn^{W5$ZyhX% z>R+uN*%?%+3B>d+pomUogaOCLBWVC~g3F~Tf|cljEtU%_0NYf$#tVpE6tXIfnMAU6 zY{ojA`>?lEBWw%4oT`K~MDAY7%{}~`VDF!EP-mc3@22Rh&G`75VL>1-YF1a$ZU3UN zcs8bOD!*+iBrKD-k2cpA{S!O@59E}!I~<1L-xv3^z(MR>Y^>n@WkXG|wtz7=TU=I^ z)3`~ABIG$#t|!G^Z$~HS}vRa zLj2#!KZAS;)Yt=i63H5BJXe~T+iNzo;fY*`NKg?}Dn%gv>PZH@U(av|30U0o2%PAV zWKfP?ULS8CY1{(U8O}M!(H`#)Z%tMWK1x$VwWAi7C0e`R?mo|s8hE{v_7iF=Nterj z`_O5(Aeq|L%aSsA`JwgU_P4Kh)>Wr_0~-GQh_LUGa>|N>_r}~F^5mnG5tYOJ`pAXX<^w!h~2 zkT4O*M_S0hDdp+z(?4y7{p&wakwxzCrsU`D=U};aHkiu~0Ezzo`hFbjcs=fWRU(gd zUBCbNa6KBk=`dL@LqlGP zJCH>m`Xel&H~q-91@eWI#p= zdOp&3AgUAqNMLMJJbBwMz<6_1h>+(zg;m-)SiRX8g~bWB6Ro$tD{C8A)o^`2B{ie$ z$)!j{Oci^Mr?Pyb_)X`mS!?wVSnQnLFPQ1izmlhBP*Mp>AHKzHupFj=yl*BIauI?{ zxYny>O4QK?K1n!;;~dEcxwVOWye}BLFR~JNKFJ6JR0s=V#XMW3NMl{a?|FwGmQtWp z7>64@=UFi}fl?Pv9*jCe5VZc*EMg=ohBn350CLym=A2w{!Th*+C z+Dx2BrG$~omm8b8TtKhO7B&G4eXEiz8(J{fkJL?(9zm(}vbgRE(AOhM7#grsdQGSA zwFDXf#hT`d%oy2$YY9~IX^~eQ5bf|b7{G-Ms5A?59oN=MD;$l_LL+T-jYRlTQtUW2Wr^__NWQ&^_l`uEYs^kZgSX8`rW+-bA3Q zivA5(P^qH-x{4KwW3}V3-GteF&JxQo_nfzyIK+Vqq7;xz+lX9LPz7-s2+=gH=A(lJ zl({$7g|(1qUyX?+JzPyepU9~<@Q>5QRaE)CL4w~UXX~==@{AOWKKo_CyM%ghAysUcAbR*H|M-{=O_kY?+_JJJKExi zM}@SR`m4W1Pzgtp(!cc=3GFmmbQw)T{oNupY}83S^Hne=At5j68O~5@={xC$J_>HG zRu)gt`AK5!!KhkU>r-o@1`{!XyK{mm1-gqEzIcn{ecaZ4eM#G6 z+XXj$d!Ni+>xtDPg7G*0BS*Slg<1zIWNL}{e8RV89ve!V`mci;Se3_-B&SbgC!Ioh zggrY2t@!cgo#HNKX(a>)4rg|Nu3jL+NSr@8?OgG^Suf9nZPnd)9aD36f$uk=p(|=@@6O>P`?f=YA;w$wL!wb>tGxRD%xltB2t|>YLm1^aJxEZPRv5mSo!kNk{b|E1;xf`=V zNrN1`rzJkf0;c045@tyD@q#szA@rF^doKrCq*s_G=V#EWFGc*cDl~8&l`T_;=fFkSIfTgBm4{T!Z*~nCgXX*QRGw6?97REmtP%;i$|*@#1IJ!1 zsT67sVD$|Ku5i<#Resk$iJgfTX^Q1?nk>lNl;tTxL5BmC?14!5>V;0=ckT^ghgO~q zcb!SgLi>t1Ow=P*icqdeyD{)ZOnV10gZlu=dOx|cioynvM!p^JXIB|eraB1nDLIao z#j`k@KDb)%3?|ON-f(F;<==)!LlzE^?=3He|IJ7O2N+E7QASG?)4?eI(qQ|b8v8eG z9`GV!59h^vHm>O@i-J@hmqPhHoKec+6f5)#CrwO&{LY3B?pnMNxNg`l;~ai`1sj@w zU`n{d1}h0b1G{FnwVx_DNLaVus}2s%@M7v&UYKaKR1vQ~Jah2dE-_%J?PZ{>e!?F1 zC_s%qke@r6YG!wyN^mZb(`*_d?J!ewdDp|$Zx8W1(;-8^u;mPIap{-bl&E_W-@so) zjhAe_y}$BZ4jXz?>_%jIHLh|_iL_7rRn&gH5^nYY-s8UzoXwH^Ce3>6ZGeyIDo9@j z%m&+Lj78&U=dVo-Nk8Om-PN6HCYVx|F>0RTf7QoS=>7m7DLKy$-K2?jiCXiAirIsE z>1DkEWJGLc4rr0M#?`mmsiw*iGUfhBG&R?Snx?zNP(avmAu6z32FU79mh`4OQBnzi zQO5LlPv+7~=om%R-P}FC#Nja`JcW~RDO+=Vvn%UXBU6uytlG7vZo8saQ2#L@NK}c? zxq`>^3WGwNwGxD54m8RWCXvwENcSJxPMr<}Y#Fg3JIpZb7mb~5K8EM}{3#%Hir%3= zmT&95#Q{4zX@ZNarFm@x#iC9H%D{72GwRDzl-h2JCol}-*AYVYK1vU(vvT#Bk;Q>9 z#wvQUNd``(-^^MrEuU^VP7C;txl&Xw9m)PXQg$13E`HejAuaPE>iPLX9o?3`Wn}@7 zgu2*Pu`@a8Mb^;COJXu!F1=DG9E5G+u_EddKua$MWWC~M!hs5`1q}nj=D2CMUfo_o z7bT2JA1zKx`Wu z+YO-rE1c4_WCdco2^=JOCo&3GXbBgRiYhzAVr z8T3X7N3ZApLoBCU`Pygjvi;xwM(Th5yL6~A6~3=t+2^T ziZAfEh7ErGq|DyCRf(Hpcq6ji%K0tUGH+Pjo~=@IR%?gl_}*d| zk9z}(XO??i7#)oP|JWAs*ftZp1KF;J0#%lI!kV^^^f%F=Q>P?jqi>^VEnPijmW@nb70NlT#O$%ur|15fQ3(|6EX4 z?5eLn5~JkxDY>f^$Wp_WS9)07EJW%3kDy9FCl z0!l~{TFg^vBCRs=IeYv2H;NFbN?TplCY$b>hc(VL$=*HR>@Q`&qL2Y7UpRkXA!)WA zObrH)s}@nNlGzq@f!asdfHIcU*pJ2X_k5{0#9stMoK=o5O(-mTqP2#>KS)uCrf0d# zH=W0F<|4^fCue^uz$~mKGwh7HlJ_O%wBPaMX`KxXQK#~t$>HS|b=~>3vt(8~rCY`u zyUnQK@fcZ*C9Z6kp3lOcaPM11HvJf65Axsp&K?SaH2n&JAHy zQFDAOizK(r-#iGMIhzKmtAv|#*35cXqdsSSXF^-c^rSCF#EmIAnU!s)26OHBC5D0ce;diJFE2kOYw(aj-A4AfTfolo!+c$AHo@@R>!!?S zG1EynIi@G9i3kda?|zsSuZl(j)-HAE3WqIA+0KbKC+S7|!xJUxWQF?*M_$B}g_OK| z>{gmYM9ho;#szOkUWInavc_;-sm4XmW1F(XLC}7svtxCd;*SBBlHq$T!UpTinN=&` z?1Mw`VzIBKxs06jcUO3f)U0^A?5o)nT$>Nv*&&`3ja@F2pRtAze`?Np_`bXg? z7a;V~)vv5+4Se_CQ3yEg9YqkFF3mLwxE*zu-5x?v`5z3}hu04(Zn@!6ph(;5(@_TK z07q$q=Y-l$_$iuv77gkZ@%#k1$SYVc$YFLtovJ?($n$z0v3z16$xT@3f6kt8EOMn8 zv-!LKNtWxuVGHZ8kKaq|J5V{35*+$zA~9IRM3V#HDoeN|M3b$0x;p61X>A8+vj#CJ z4?!Dug#nE3_?hiSO@^Z-?K!n>)@%0P*@kgWQu2N;$-TV`XofDVW>H5O0cZ zg;bML+Pj*8e&aM3WxLS++-ik39UCyxzcqKl68gD8s#`6m*s8jBCq0etSx6nzTb3CG zADkSLF%{Ri;I=dn1K7tGhH_RvoQX_!fk)Nnr+4i;n5E3oHd5xpM*K~ z0Ak%1EH;jK9~ z>4^Z>$w-r>K=?+$B74J@4xFWvh{gpVbL4Zuez4B74(`0vBCB|sCSM`IDlS7p`Aa$I zkwtYA>nXMw;9>Yr@~QbOlX}p7LY8e?4H-kBVqDhXei2H;1>gMRtG<#uOg^%g^U(@f zM^SV6_Sf%4+X6LRUI496Wjh696*Yu|O*wDogDyUV8Ry>{KYZN|*=7>+w^?NmoQL4q>D{@yLg)C6)UO8U(>mG>lf$~1vh6i780#dz?vsK_x640(L$?BE@n$W9f%T1$0K*Km6XEoe;<=Gt841ni(5~GX zp^3h6G|90aBoZ@XoPqg`6DMhbP^b~|HG9^J$|tWyx{4+a-`>ba4!EH!Jd-UomCYJA zx3GZNNdoG{-yJ%HIBp2cH%sOG78bP5;v*PCWtx zru@gV{twPttukpn$b{5|`-JG-1TsI_U?vPT!cz!xMAraJUa5O^9 zz;%}ia!c$hv9lztNqj4)-5wE!CfMA9Qah2yTM)-eQYa}V!wJw)-_VL=;0FCQ@P=G^ z6DP$oz{^@M4ptAgsp^ag3Lb4&mWD5>O&gwoQY7aFCG7n;_m^RF@=D!Y%&B@AzR8+X z7SjZ%!_~l)*)Id=@@AX1M2f7#O9rHkh^K=Tg^z@;i^m~s_Z%cDe0soW_pXc{JpAWAn0JpEFrYX$c zPZVAK=b)dQoVu`mL2OK5Sd_O4R%E(|#l+6sz|qBj3s}#`-`NqlV$)zKa^)4cnoNKZ zo5Io*17r)~1m9td2n zD|W6X0eC$OgH@@sDQgGhN!{WE-{`X6E?z7^$o2{fG4aWlWXi@m>L~R|bdHc{tmwtf zLbpn-=N5D9zr(44ce;&DVyWUL9G7WMb$10ff<+RBKB9A zW1Ex%0tp+r;+~F5b2$hH2W`KYBiUwIy6s(M06!2xtzSf3fY_af7Qrr9$dYKg%=WkBcgo~J)86mp?j5`Wc~$uZf#8A za%rl@ZS}B^tcluR3j}i&z8T`ugll@EfI?u|l;sUC4_2_k9v8R@uAzV%Rl4&c6|BjO z^(6JJ1?FTHWN0hQA=pF~CKvb|7g}0~L(l5uP|g|ZB(bd3zU@x}=bg;9kR+#~#+a#g z61#!|GUn@ZJUL0_m3&`d3rmaigY;9J$jq}JMs zXrpMaO8A87ogA!s#qUj@tuvrIzx)Trh?TcYo>-tTS~}Y_2YXl0WJ=?|r)JKrU+eY@Mee6>dvjh*HCq{R-is=F56K*)Dl{jjJ;pFNKXYV zhBTwYvx^`l?DmN5s=-XeAY}WSwwmcKd}jCsG{;WGh9d+8MGf5F zHBLBBXgS0D(gzDGOXaEOO%w!b=ze_NXtR|l)K zo#}>u7ufs)P^JZ&X>FgW%O#&+W&0pW&$E=!L^6sn7u4prBZ@$4ldngAf`%`UV!Q{Q z$mmh&Fi97y5>*?adCL0VzE;D6wq0n2~rX%ERb#E>oof02zWId?Q|Ht|yy{-cQL<3#uVR zem=!nzQ2u(hRIUEZRoo2U7grE{dgUFrPZ7wxR>SMRC#1bm}U(lJA9`mOzcc}G8qj5 zlnL6vT-fZ92UdY{NTSLcATLX@M7p*+1~b3Gy)L~G=Q(1Usx`ilrOe*CqJ=Lp`JEe!!&5k{466ys#6#9NUim1C?`7IPZUnt&kJ~B}qfxoRNKP)GubrNi~ z@kjfXzlwU?nGxlh&119Q~*}=5|c1hi@d|j42CjI#TO@cdMkIwceRe5*T~E%|=kb7fI)>}bFK`=vO{tdGuL___osGD@->RL2(7DL**w~s(*inpCHV7>jNuN4yk z-?(&kauk}?4!tUTFiO=Q)3$;IChO^0}>e>$u98ws`ra#{jc_SKYp<~fRy zrxmv#?XatNWN{0*DShdhOS{MCAmg##%`v4@#Eh-X${oV}ZViFnnF_R+jtK*0-ohw? zC%df5=QFgAOY}v#1eXRpJ*MbO939*MvUN;WjXX-QQ!xA1&hL<#%^dez1bDPm1*rTo z?#aPh{6^N|jNJAp=#7ltMs7acR@lpb*3!~GjH??b= zXEFy)H7dDH{6vzh8Vy<(8!j{eK|%&a4c%%nFsGJ{roTl$$S_$Vxe88!?1qhwo*3&* zQI3L`HGyS%_GWr~Ofw(2)$1KJN2MFlj4{**@^pNiX7>ZWV07>)Ip$PvYtSdu`PDUb zt$=}fQJt@bJAEE$*0rfH{{OJ`jzN|LTBBu`ZJS-_F59+k+qOsYKIo7de$+;OJ*ZaB|>tXH;(wKwd6iwwSC& zs_;P7f199SRY<>?`afqVlTo`+2*(T1vn0Uc)BH_f-R)F$6n6{04V*u!n+8bViO#!f@(G{rifrp1^wEL?{ibD!Keu z7E{rJ3M!NlWZ;dWK*nX@pld;< zL~cUCrYyWZBWr|Vpc`i{EfmLX%pjp=-<*o!Wnv z4lb2YMhu&iQ_*-c>bnIyvUZv4x!+5Jl>UsYpTof*TopS+h#(4POpY2L_|xNsG0<_t z4N=;Np5~a^PwQ9--Z5Y*60P^;`CL+$UGBr`z-|XxCcsz6QCwOmSn0Vtx`CY9@W*dC z_^*#$12!=e5UxWvZ6ud1$;qua)j})7tx&G+@=|u6Q{q<*wJ1$Gjxh zw)_!!ZI{2?mNtvTCV$X^xRU4K_6U`?xIK6PPhu^uCcKoIsyaqMxMJ)IdwRhB^EUc2 z6o%f0w}SE#qN7(gu>FC34N+TT+>8+1-HNb62{?jnr?WWq05%kFL|oCu0~+KF*(-I! z#Yj`Rt#g7KwnEE;o$(1KB>ID#?1aPJ&+vV-$jCzPQ#;C*K_G+1lkKDiHa-Al%ecL zF)($|~m(N)+ zFvu=X1ZAu;DPH=6jPRv<<;c|=raaHnk zasnAo&&Lsi1EIbI&fE$f8|IUIXNR@#a3`uiz3PQwuj-=OxIGPQsNS5be^j+6P_#pY zP`hh7{e`pjQF?fUPXrFLSeb7ySjf0wjkW9^j&x82rdmJtva?2uQ7K z6f5Tp{G*V&Q@AL0^D`fW9U@k~mhTS1L@5I$AAdCOiKBipuWi3%t)eDP{?W8+A^T!o z8U?-m`z}l}1n$qr_?D_eim)sZNOJ!YBG+bDl z`uTbGW|Qcxd7C6<1rWp_6!R~i1(v$p=lTOK?b);6zMGXTFGN8K6kGSn6LknlDApu} z&d<#+veOY}KT0yP>S`zTWGoYHa@D@uH8zvlA$9Y}R@jASf^u|9{wv88VqD9po?zLo z!ZBXCel6-H^WIARP=&Mst9ZWt0PR(2 zux6wu{bEh*R;Gs?X^MeWh-3}@&zy;86H*6~PZF$Av}zU^zXU4DPFHbxWj3rBwVT@R#ilwcZvC;1hyfVV66Hytr8Qgwwm1|=}n zTyt?9svsKFB@IVpVmB^k6N+m*yrQk#A#+jo_bV{fSg^2Tg`nCKL1Ik6@o)@A6v@69T+D#>*j#*<^ZbOkP6 zRS&El_});0q$aPYMhR3cM7GUO%KBe{?AWv%Et`AhU@}JYnh&!qj(aaoq4phmfmfPx z>kO_CLdQxvXs=kEmwGSC2eq<|@g}DO0 zU@!}|pdYgoDhK#|P7>>ebD??rfl;lb%>F~tZAO$@ zH^1=28CswKaR{TH+Jq6*%T=ve0~o{zhGI#5V1Y|j{#$wL7-NB*+g+1IPRmYbw$>q% zHa_*iEF}t}$YRp-zy6Wtl0ptf1baov)Dl+d!ckf(h_H%HqJQfx=KSfc>un5Q@{N(H zblEG0G(YZK3fC%zRMA^49OHa>od>TB&sP69E4QNstp0qR6~XlWF`}6*3a`UKqQrej z|Epz)?baH9N2t2G-5T_ra}XVTi(?oR&UEdVo>V%};GYnk)Pz!1#`O1>*lJTa4^?Qv zZ@NODV-yO>)|p#HZp!GKBo3U&y=veMsI$Zjs|QfY@-qbQv$)-R7)#LBe7dSrSfzd9)rPOy^RfU|r(h-=h;sogz;Qxuk*8k0n_UwWuL*e~57~=p~nf?z>ai{io^g2u3_s@t61aLL4Te!&I zu!UwpMMClU{;uHjr@C}Y_(^U)%W?I6t?Q*Hvg+^8bgZ~HgRllFM%99LOUnT)c=rC( z=%9te@=Kq_iX+db&*$Xor*{h|8`%6E#Sqk^XnGwegCzdE$p^Cj-1K_>tkX(!20}n+UGOLI*ZrS`~73}P&UIJ ze=u&7CYyJk4})>)jx-EqR0t{2?a(#n{akvA=Q2n7DU=88ZC*E<_ucyGYL__k)8|%T z>Id-EyT4j}u@?wP>0HwpS^e+<<9)_BtjM~K-8&VSXnGv%UbzJD0-n%?Uf%Cbk4MJt zsp7;{e>jtpLw)oThFEAaBHeo1WwJBN9Hi5rEu;Ebuo{WtQ#QxllWxc{#StXz;!`xYOz-Kq%dS}ZcuD; z5n36vO(@eE#6q%2pxlx%zjH6~)R{NI`flAfnDPk>2TR(i^=W zHz@GbOrhUs_xSwe(`a~uKobAyJ#x6pMghsM;904~n`1*ysy129Ji*&kA|EtuW>C)l zi3gCwq#*?tfY+ZPkAu4qtdlZMXlJu&ATMgUi8|taNijPPgtQ zWl%ul(B`KpT?+bRf~g&cBU(I#-;8jQeEbNHy-u$|I~sT?o?9;5*&Bi)9a+RyzGTVL zExK;25^l#xD@l^ts$>@^WscScKf*w3-wSZ5fwfSE8nB`ffx*q2ZgGm!9NhJle}x`O zybZy)di@yw$snISX0z$$#rOo?{}XXl3s42Z`kkQ3h8cJvA1B&Zx}Ys)J7A85X%Zlh zT@kc{rvGWk6kf&*YTnx9(eUy+eAeL$!K$n0+Tg>l{HUYP&(xJ!*qiOi=y*pm=>?F^ zHJB6_LAA&BM?zKipQm!~JcWHte*x_-R%On6urHTBaMA}a9T1olA1p*LmNg~5#u8hN zW}_bOj+!e*pce~3z(`-y_K68^?WGgz%Xt!gA;Ce;@r~0gCO*y*w~*#9s|4_o2ytM+ zg_})7&f~M=iW!OX-7qqj4xCM60RRC@+7vzgJ5jCdRzM ztk=${yW;8DO1if`4P2}`9^>M~qFI+{(@S*nGD~kZn63REd!1qXFt#J-3js#e^@@Y0 zyq>_M{?0AlRACy~8dqNFuud&)kH~90SQvqiz2qLnDAl8UKnOhj{MXGsEEr(##T1;l zwtewyA8eoj6M_4Zj~5dwHpgRYKk?PYx!5VNrmr)MRUV*EUq&jO&*toG?4!GjsKP|# z)CA;UNZgbMv{7pziaaN_v%}XQm5b|iUKK>hk?s8|$u}PfBgBNe2cJq~H(pmVLMlnr z>nompghVa`CQ@U(+Gsbc@d8NEjBF?b36vOj3dlYk3BLserAadf=6)LgtLZ+xah8xw zj+)MK;Oz>7@-~D$cF!hpBZz{U0FCQ2886A-&4n$&iH+@8t+~_C!!${BdwvF0>E;LT z+gT0?RIw^*r*(oho619FCtltg5^DAfiA%N%^mOnPTY3yPKWU0Wq8lJmuacjCyX?*Pz7juaKz_S zCq{K`^U$Ltq7S7UPzzM$6c*(izIKvKM;f|}c}kY3RDb8S#>?z)KztF}H$oF1MY6UU zE)@GPQE8IEcCJ=5paj%YxR#xo$eJzZ7Zxz4n&cQ1H$Rj>5n!V2V_0pun=l>eH21g% zrTUFyDTAsi!)AKfr|OzCbxrMN2`KIBXyKldyG2gy2tfKtCq(1aT&V8l2|eD-s> z;n?H(<9lm6=ZW^9_;ot5T}y3>G=k6q1uiY@hC8%kf?`X*<0COM`#~X#tQ-7=STo25 z&TjWOoVlOpZg`nktDfIS_3$w#$&svt`{^wW=9`R$2YM=y%@6J_B;tQ#@^I?BJej?p zJDI(`Qy6<@$p~T98+a!M#B85m|zK)2z@rts^W?nsx*it zFVi4u?AT(*MG6n4j_O(j+Awqpv*7TZ4AIQ|cbC$GTy0TMm{!l`Ko_sbWav;^n}+1F z$0jZlNaoH=k`cO38ioAPFP=85zNj`S#;Kn{YD$J!^9-;UqWNMEH=LS<$;`ppL4Hp0 z`+QfLpDYyJI8SOQfKbxew9{lgu8}erK^vf46KCV*!sNDXGrzsn-25j%s-}U`QJuar z6*j%6Ci20w7{V|nBPUIcgKuB1Ig>D72cR%BFW;x4DOEUhb2bttm6a1E|HS*xLgJ`8 zAZOGj0LRoGapIrhazPTN{7ngS5Q%sztpO!W)6g_d{sMC=J?kWL^8q~uxOS#{O43m4 zhY`neO*tSu95tkijYle)8p84TjbJ}rY#SX%@s>#R)@!Hm)WfqS5c;1R5SOe56v2EW zABHe;_&g6~2ETirn(RRK)|ci2^9hy=Sw+hS5Jy9LAUNoz?If_W@7gvv038LSy&`|E zE(Hw?Cp!};vW;z$a{JyuWZg33TCJ%R!Z+?$FcGCZZKS9-x=o2a`?5Bo%pz{BXE*jn z4ub?&LFwY=fgg`+->ujnp9C5ou_!{$@pHk7GYR*(9SiVc(}r<>q@(6V2*581<&<6l zSA1-bk3hb0gle)NWR-jj(jCqhIE>f)&~`%*U%S4Z%jfMr8gK5S{w80LREM$ipaTkixvQW-CVi+~vnW zvpL@wG_c-C=FGCeph>*{?mYn;nw=^x&F#Sy9v~VG7pfX9eRZsFqJknjjg4$Oopvxb zEJe$imBmcDmBpMIu5W@~j3283$oAr%NBxRQZRlC1Z;X0XGl%B=i{j|1cKSG#FCe(P zxI;nQ?!$qg%9m+EX;u)Ax3N`jVT3c2I#IR|en(V}0W@B_pK@jduf8#R1iA)}=Aao- z@Ml`kq+0MwF%&{wNml8FqR%GdFH{-ZfiVW0j49DPKYH5?R{1I(^Y(WRfWuZ~-NC%u zL6Nju?)~@=?grjFg!Edn8e*1i0i9=U&6j2cn(WU0w@=PLg*U33d)`T%(!A6gi?WLn ziH@};rMBuOII7YLo$KXtmy2w|eF%$Nkd1GmgRZbR1o-z^JTzgxXhNvgGrRBBRX|CT zZ}oBumR>DbV}ZrSS>@b1Ajzd_M+YQp;>fdTC}Bk3D5>0|vnR7T=OtZq4K9M*h!ChG z^+{lcCV=3!Y27tPQ^gwHqxvS;vLh<5<`DZ?)Z3g@l_{OWmt` z0C|MQl*_Q4J|NV9&z^{tWRD-|^jCD`7Gc>?&=c`jRg@fJy>sLzpfLK;M3pgg7M~dP>sz-W?ZAayranXIl1%5u_65pqKmou$piUQi*C)sij`CnTt^=9=TKfY6F^Gv6=+u;Dt=^Mr4w}#E(SHY<;zg zS)JiYxM!8xAZ;@VfV;kE+GrZ&LRwn+LqeFHr9CB4XTP#dgWv)Q`ungIS3Li%&DWg` z9SDYtW4V5tOwRE&XE;cI2w$B2sIUwF6!wr8Fk1@xy#t0V!kGbRiMFpzU)s>kyCZn?w>@?w&D-N5NM7oj8M6#L@G(c)xhwUtB_QRBsc%f$$tDb*_S)U^PkBoC$+>LuJs)O!COBk?quPbTfI_YAq30i^b~f=uY<0S}OX`n-pJA!M zajPe16f==bA%DAI9qH7cER{vHxUNuvj?m2eVR=-_V1UHCfd;c$;gHuhHm4s#y5l!S ziU`!f3Gs#V@3RS~fY)#dE4ZbBm09F~^PWJ-V|x~YI?U2P6?(CO2$!lp3gA&ZVR4p4ugje*3=tLp{?HbqpI}Bxf4fmn5FY1bO+jH-<{D<) zpx^T6d_mERd#e~ASUb=jn!?lYU|q5I(3U@@d6%lZg;Y-h^GE*1Gp=1*w){}R`(4L$ ztann&%S8g(t=Rgx*@K0797S8eug*cpgXcB}TgPN*MLuH+O=u7$D~|xC=VlgjztC9^ za4$*`UCH!`&fKEJO?CK7-`@KB!@AK3fGw72S0r6I{l3zFLm>wxYyE1~Q-bD~<9Z&< zj@jF-%Jw{y;eRfRt|V>te2584bOFLU)d=L($LmcgCFuowp?!=x8tYtTKHNU#oaRvN zSSi+pCS@K8YU{j2GD4?7$4yczLn7}F5G3`mgAa`usHCE>*Ubnj+AZ{C-iS*c%aUQh zE&Cl-kt*gVS7{jr4D+~2k~N2lzd6RHGAf0_!_)>APextzhk>F)x#uF2D^GQKnJ(?x zmcEM5PJE&(w71$p>%pH`lDHp@D54AAK!(WRfo;vQFavfA$*CwwmdBwPLmRmj(9`&6 zO#!0w+>-yV(2i9m6} zx331>n0q%lzT*XhGz!$En;-605P)m&s1vxl8%&!d|4MM0hQ&>E^QEIT;jH)Z^fy8~ z57ndRkrhT4s(O{Qp8-1E(QR=L5NhjH5`P&QaD)IHg)hi9p4;rZQ}mdR*F?WcGyE~~ zFHXJWBDTG=rQ&i`w#Rsw!G*A1R5ejVJ|K8LVgMe!FQm+4yYf5 zX?AWj8=GFqg6{w;?zH>^4<%UVh0i7Lhtsh_52-aUwDI1Gv)3!cQwZGCZEp&(ou!hx7)xYB$ zfTj9371Kn(x6?Y0?SXKPf&B7kAEYke(xLA+{)a)mdk5XP{rgt|U@>ZwJJ2}Wq`$LZ ze`ivXXlp-o3TaK`MOg%U(Ge_hCw{rlO%KR6NMNfFZwby##- z1R*r4+M)yGl)v}0H-eZQd4lQE%|BH}@k*}Unz$XAe4jUPIyA1^h64+rj}a3?y_r%uCg@)vlWw**8nBu9z3EbC)L)Y zpT3ellj0;UEQZ32(=ZVG^H6aNlpWoHPoG>F%%SL-vWJKiC!EQk(oxXB6Z=91Vb%A; z1{c2sb?>7k&sDWNY@HAOfQ=FI#_dyH*rMQtHcU7oLdY2a{M@ccw=Dcz^61T$D7doY z1VjDt=58-Sp-k8|k_S;wQ|BDCH&^ksH=$b0$UY;F6kOcO>1AW{Ca$RR7Yq+7?h@@| z^Pbfh(hZe+piK6-nh;5D3-~xtqxha`2GfMHNJF8dYxCP8$lw2D`M$#=>eC~gb$ulo z|5`N?;SyT{&hgV-k@t!Z9e%a*R%2ko+#!ivz_mTb9Y@N1k{Ypj>{{*J;m1aeue(TT z`S2Ac%$omc4v`923p)rm{QPe)FG8%7qH4tfR)kX5XvE7DaiTN|KGOR~$MT z4S8z3iWfLjVXU>s9?Eil)0vRr>yxhh{JUNlVLB2~EmxtZ{I_-AAjU0?1xPs)SVgWd zGdKX4^(l!WZJo0zH#w;X)qCMOt)6_;wajQXGE^o>n!CP1h@`$COx`p6X_aamQ!4-KWcJ@MP<=oa5H+>M0116e{~uj z5Oi`YJ`ij&!GC_);Q(pCl+ru|MflgM#rIj~K!o$43KUc%c#?W0~;ojYz?z+mZx<7ne9$TiSeMWgO z0Ob{bu2fA4@T>lIJRE&>jj{56^yqZ8>3wtZ+;J0pi@W!Dq4%0*fLp~A5PUu%G;#2F zxI23}Jq0mNaqHHVukVw+R`3xWPc7F6&pMmFecXz0p%`qV?2tIJCUS4{rv#*MEwryJ*hnh>zmdvZ*-%AHE>~ZYd;hym^Sy^ z!sxC56DzipBpH=WY=Yyaf8j}_1>cGxIZFB=B}jHMx(=|i?eF(-Tz@vmDzcvkoZx+q z>wG))uB_6UQU6E|y9~ZiqzNxs{Z?eTO9ywL4tO6(4*rvlr=#g2r`O&vzBg+co%tn4 z&v)Oi9#vGUZ`=C||0uMrDaZujhB~zt!LbU*L{A#+<5_M>Hh=Wb#d^f=#4K3yr!!C9 z8-D^adc%0Shyn;hcKJS(LIXnpsK;UGXoQwlmp4rR$1b!;oOfF8{yV(La&|U2Bakl7 zB%TBIZ=C_W(1;1}mQZ5aP}1-l+aBOtE}4tp)JbbggUw5g)A^10;?_rKg-9=H+T@O{ zz;nD=6ID0&&}+`MT4z`u7R>ph7T zJ87sT0x*QqsP|3|UtM!Lc*?4J5Wwpni&roEp{r;J`}k-ZfUAw=5Bu5n81D84`eMyD zZQAe)U!1~c24AcHqUEq%VZ9{`2-p>yQgfpE9Dtbz>v0(c_b$OdyD!+F0jmW=^;VVI zDtCa#&wAjO(*~tv33)67WI&lB22d^v^ph`0eTR|DbGZWlI^J0P3DW3d`~GDjXN<<- z3TreD_@{@7DJI2R-iWNgVYrNtqukv58kBg>j$pD%T%5z!PoPVwMwK)}+8z{Lh=o9~ z1d=*Hm}cK!ws>7J%BIsti_DBTR6`w9!urpBEI#zDq_AVyyMe$Ppt~+x9C#y0yIaXR zV4iltLPXi1i|ncyz%W45v~uJ9dO+63sIlf$9_t*wcI4`7V-U(dlly))ELL@DY zxZX!_Vwjx?W7vh~X14(*v0G>z>6WcplAMsV+cAD}jQ24iA3e@&M&mQurC_$Eu*Qy& zaxqYE0H(3+0bjidFg#ECDN*W9qY>4?NI`w~lv|ELN=8IUjyTrG<+{h_)`0m8CY#{Q zOtBv`dLdU)*SHIUnih{43LV^`gP14HBEVM&F%@g`8cbMYuMshTG5ZEfr#{K(&X|xDGvOUG2V#z5;_YBv228^o%rMM`mI$i#1At~@!#=U}TTMaq8`@1xb z$^#?dpi=MK1p+ssAg8i4D;fj6z$)w8h0Mr2wA-v=TPJoU|1ispXQLD2&KyhNqIYfE zO;31*T;~h{gJH4w8;2E}w(aA5RrhdM?!QE?k}iK4+Sur~w~@5jghGisw)0QeXA23% zC-H;h(Lj0ndn-DSaZ<0A&B8rQS0eSEKTO&kkXOiIz$n$l8HapR-Pq0 zH?~sEgvXB&%Z`g?uzzrX$y5CsTel#jaazF8NpY$GT+?hH;Ngcfb7>~7G*6+5qF_id zg^fdV_CY(yH`#furZH%2kk ziY?SdM^In&bnh9bA?pYEm*Y%d!h-71hfo98C!(&^hG!tRW19cNuciYlW*6GRpKLPV zBzgw{D0>44>#|2k=XpR!+hN8beN0tXgplCuVVC5H?jo_?{nst*BYeilQ4z z`UeT=)^INj%*4%Tcd|qn9BdkQJ|SOq7~35qlSBhghTCAQ&S@J*i$ZanhF)L*Om|@V^{aO*4{lezRvE%;~OsSa5p9Ha9ISj673b;>6|>VNC=`0I_jLtV4f3gAtp>c zI=pE3wsqWX4Y_#4-SbGlKbYNoLG$2s*V+Y>2mgtEJU*u|6E7(p;M0z7G)v&UWZ$BI zKgzP9tBaho6U}8_@GiAj0^wJaVP|mKXWt7{J#OE=WLS)sd9IBm~Zg?g&7o}VN{T6b7QWG7+7^FsH zzsC`wmz9595-f7zC#6)eb8Ytpgx3Kd4yoG?{1j&XbS|*`j0JJtO)HTuLkpdZrg`lI zbqcU|7I`SNF3kbaCmv8F2ZGB{!7Ssh^22($_7#d8mS-qsB7hSsjyfXgcaD)>cjRjo z;5Q?VmDpa8(PE_Uc}xi^jY=tBo!#k*j}zC!VR?aMZrX%L3XekK&cjdu!i$o&VZ5bO z=)}xFXXX%|kNOiKR&s^(<=(8GKvLDHs5aX>z)XH(Lw;{YkOlbA znY3jipHNA$$ZRTx(NQu`5`mYGebI(6@spoKt*gTSfHWhkpODjwE7 zm0hxD`2st69NfsE;E#O_wR(fmDGTKm8XAWFc_tU(_g3~CfRFR87D)?^FO`34q^=EYCO#SS!9S`?ykFxJdVCNXU~E z-(GsuI^!CM@X80lmmhJd+{_R3b_fx?FA;H?iy=)jxomyDy?p}kmQMT^V8|Hvk=GD2 zOrp&rdXxyJy6*7+btHxl!zimzcnruAv^(*Kd&pBzD72_iO2)+o#BsmE13fQ5AtTiE zZ&vxKLnGYQjHcySWPEU@eXU}J+1|9mQV!@jgn0=Q@(o>L{)>bx$gVWno zBB@R@Q`cY}Z3*Y%ue&{?G2G`o5%e*&t)G#p7*sjTfvj9zpspT5VK57Leh!tA?__Rc!2aZStfncSknZEN2pgepql(I|=k{%5}$Kaw_CVgeocBNfX!%pfAiO>?0 zm6B4H=dGlSa(}l$fpO0*RQhEPsxR=LF=$ssHgeooCx<|OO!|q6o_R*ZHKqC4sUq?< z`+RzkwDL?x)ppbhydcgX>%eLVRAgmg+9cHq5Qr6mPK2E1H}2F|zF*H9dOoyHPrvf$ zm*S)Vq1xsJwqh1YLW)&beGq|kg)>k3!n9``nN)7(S!+ze4@67ry2&Sb33PNp&`ord zBPT&LC3cPe*Q!{7`QCh|^{IY2gI$$V39o(ZwWN0f<|Hb!KCMG{n>et~{H`Q0hw>d1 z8Q6mlKqA0>ZF(WWy}lTR%=qvk^=+eeOzqx)X*s5KA7xvnbpvw>8D#~_U-?378ZVz} zEBMl9v%ShZ{vq<=so3-q5yooN1|TuBVt*BLiCtslV?ilRvkG6VAJ+sF8zC?>cEltt4rB{B{R}te>h@gfEHVho z$Pf{8bOq?3Oi*VrAVu>f&GRoKE(&$ve8Y4a#pJhn|Ji~5b0|K_FvzCex!P+UU%$6^^{8H0SWU@UE zPX+5BXOVBULBe;2`8iuY8xO?FMQ9&zC0h$TW@@$sk}jmwf`hahig|Bo;-?<~v^F8G zpDMI=pgJW-LS2OYX0*8a;=GO$+S2U9Dz)2;3N0JEJC{CmpSGi6)WD{jgdfs5jf|&` z>WJoCk@CK3^qH6Tu1>PB)H*;qDy#AuxLMeV1t}w6xVsP9!nKtv;%nMt=TTk`ay6y# zP!LNJiisY}Q=*c_H+kTekc}HK7f>XyXw;I?>^&{VUj13N<)9N@2xR9`puE|sr&+xY z-970#?~8xkR4NXZ39Z>YDMQ?6oYy3Dy6;MHa+*3c`58kZ8!f8ZH4rxVi$}Y{hBH_( z7Jgpd7uD3_fuh~!iSLxL)C>j6rVME^)Ukm|&^o9;@^_yBr6y#2VvH_;)f2*AFi0o_ zGUWNPvR!X-4{<;}T)3#or9|5K@u(_2BTBk}TQmIY^KU%ZU!qe!G&<07BbCz0f@Qa{ zmkxAM+C9e9a75T3a&(#vS2asyS)$h_+|9yivcHfICiFIqp9Y!0@P{C-AHV%ZMT?s4 ze|s?W)py?=JuqS;e6+p-=FDW9xbz=T%aGcK`WFEdn#omwPad6@cjT)$ka4Kw`2~c|a$?#=pN#~?Rcy{EBVLh}19IFQX_O&i{t=vI@P$FVCK=zV zSHF+gVoGnG84X+k#QUdBu3}f%{k0L!M#MwsBPWYN_@&wm)jagBIyd4&d8jh?S25o+ zcx|Jn{UN_yQK*^Jv3r{>=2pGTanEYKWi9Uunf_fb{U@5EoU>3_&l-VHE-TEFQ?M|s zoA*L6M(?6OuH2x<*hqqCWR%pSa!xd0-_`~gw8WN5%5EaLvm5cN!Q*hirIvgXR7y}m z|2O>-%%E%MtTfm+W0=!w4NJoo zxGc%nPp)6b)ENz;23O?e(HS@fecLf@hvac{ZzYuz+zX5Abf)1aA9~r>cMvDf$4jf* z`1qtx;a?}s-@iUuaMP-$KRy8VmY?Um9$e}vlh>E4M@LsFUtPHj5>f$R7y+@cI?hBR zF6{W;?)*#pv!hmAX zEnz_P{;Z?HAxFMMgJC1l6){OaRH4-D#$P9!C6?}>Mw;LS)SRL=W~hm>0J8c)JC&O8TcI*leMA zD-%IX`Q=zgefdh|g{8sBmlteSwh1k{yFe6e&-KHnqyf4X%?V(6)b92#WCw-Uts;Y7 z8R|0AJWuKBq;IE$xUlhAJhp>0L;l)dC*$g8|IP)?I^VVZBIIBzEl#gG0r?~Fnzn!M zgAQ=4t%$*4~_o|8{Qe%Gw<@?8Ms4)(e4x{VfsA(`#g@XQKzi$}Dw&;3XJ3j5 zbmsZiR&Kg77urW2MuUy2JZ#o-v21KeI98v{G(HUBuVFH0Oy#MiTpHKwcZk=CiP&0Tb!`7m3{c?CJ!|P-R^PDWra>GdbVG!CM(m>Gxcp_Q6 ze}ty&XzJ7>yLD)8{&DZ&h=<`;ff1!AAui4Ru5tHT+~!!3Q&Wl(>0_!)34bxran;?%FBn?Cx+W^t;lZn)s0I)rhoj={M3LsOre{|x1J1ZpPBn^Mu=ZubOQfEt^Q`B8on;r9`!5-7Q>?MT4LveRSF=Hm z3|Rr@1D#;D-6|ELMIWGvCZGOnP%$*C>s9UA5KU-odUpB>+}$tA)`3sN!lI}^i4YcP z56ErP8Ok)&pE(V2HLm(UE@C?{cRva&tMVqgJmaTV+FTf!$PCF}{OG|sjnaym)lhKT zO|Vhh|L8-y>iBCE(}xg7qZPFVj*e^J(Jce$+&4D3weLtJba+S8xI`JGbbe#<>+Hq_ zzXgpt<~42~Tp$c>e_Laces^#_)h)9Ei#4-HMog-*dJ4<{uOhAM8wp<6+pdLSi8S>$ zwgXtTenad|Sjt&4f$LAr5f_$*?L;s_FfFh`YG@n`tpiEx=R78C_#H`r^RGjR`2O@7 z31VO2l1{=kzfC!L@{GnuvO}*Y9sMl|;|0n5oS_SuUFIwUW=R9Y4A{I81_5&-l?@?% zd7&_M4n~oHvY@yjZ5WS4=WOed*Rh81(H$SX&;#>73qd`?k)-_Hza&h_gM5mwKyo7O zhgA7T57}1C-QtMZ>u)!T#MRu-+%yfi#IP&Ar(aT4QESPoUl>iH(k{qJZef!m9Lf^rD#U^^dr-=4(8{3RAO94i9|3?eogjc> z+l^X2TJ#1~wwL2bFQA>Aq{KF*go$wrUIAOUEZb-@fdnh43^^iqj2pW*vtNyUcMXo% zq5iC#99l7M_VkntCQJr0puz%|Xq=V5+!E3+c2R1FynGDtU(#|8x;ZTIP8`_eI>cdW zv)jfz!UlUpGBRCcxN6kiq9UOFXnYp-UYW8#d1h0)QHw!4rF-oXet3MA^y%_-q~GlM@-}^+ejUB|3YZR;Eq@=h zd9(w3?Vj$#^R{`otth9fRS4c*3XRgwUh8$gC$6%2Jss~q zR$mkK1W2{&)7y`yK}YP#)M!v>m=%Q;_F}6EpPLcb-x~sXR>?h7S6l&}Ul+}*@4@aI z?;O1I^}5>=VA-EzN2V4}01w9H`om+ikIl((^~R0dfqAV-mc@_kiz7f5Z#yW;*X_qD zWm6cJWW&Xp1ewP8iqj9=Grq6<#FVRfkeqGVLLw8n;nXJ+)?<;uly!XDgg8^K_$V}G zBAYZ98g2=i`lfnp6`W(jJ+5!KRLr3=HK^Hm47IW2-O&>h`~HXyAnPEX2@$$3@wl5mwYa~Esyo3SFJ{>QG%}NS=DeE5O($l)5&PLEh&Z=F}bkE5C z-nX?|(*p2H%RWQ|^>B&uv;PbL++OB~hA>KBuUyx^Vg*bOwx4ew@6(uVmx{@g5fga+ zfl%GBZ%T<`RS*3Ja2Q@)n%+zrfN)i?z;3p+L2PgVi^lv8NpgJH>HnY#lm&f3{>Yqi z0nKeEH}gVpkmNi3pvqs?Y~m;U^fM@z9&}kbH)X3yficIS!3?3|rA1T?|Lv`_dyMlG zaHh)nR4cGlduiCHwOM&2FzGv|hod!uCt(nb=JXG*6O7jjpkciWi+mAA-|%vDZ!uo7 zn}me3jvg=Uc&U+NbQW~~1_UQ;QJECZY?duoze9%%lYJCUiIxay5}mjBG@d~I+nKnt z%_mhZ7CH3pw3l9Le+YKb69<|J1TX+u<5#yb6_{eJnyuH9hZr%vUhK}Y-a|2YQs*l2 z$N3RSXV*vu&}-!JgR9@k8Jtc=^Q&akIgd%bm{2Z@r+U_z(yYmA+m;{b4Yi?+L!U2Q z*7_Z&`kD6c0R0AjE89WOyk%>x{An{G%!xQacJ?(PEKJBV_(zEq=9G3&Dm$C7EQS&K zpp&l&a}C(_)tZga7bPDe3%nq>PuNmAzs6J_O@J8$F!dC!;L?z1^y~AJx<#4+Uy@7OMn90QBnz52K;Kqma<{bAs5Kq4DCH7tM4cgK-LjJw=> zJ#`KNT%?ELsAb4tLDl5T77U*ffXKmWTU4j9WmCvnv^gtyR4f^ld)?lWa^8!Wisc$+ zPMD98>zrJ|lfz6*@_xzm$5$Vq&P>7G+Wxd&S!W-SsoyBq73HuJ4cW$4G_7Ag3kq^uMveuGLXd zGPKljNfJscil_D7(fU=iEUpwbT9|X^6xKFE!cwU597mP%a`3Q=s}d1DKb)2wVRmA& zrMUJo_cySgizCS}@cWvbG4Ae+InhMT0LLrjqv&7=-|U?{?ZKL1)u@<48SQ;8ebJHu z26l>>IbaR9jNi@2^vy!{xxw6&0+lJzWaqd}${O~|fTTf=fZ;k+pU!~D{NOmw&JB*+ zPDuxmkBTd}rsR(&kFIdsMB#q)zwqj0?!@-@!Wc)gos-NvY=MF7@bmS>;ZQGpK#>BRro9DeBZr%5DcU5=oTIY1v z*}uKkqk^AiutUHRf?%KwXbW~wM~fo??I?8sxPd0_G3qZy)mph-(=TRUJX>kvmXq4+57H74Gx?+(u8f z@s2xGtPSE%dI-kKLj%H9mWY5~)dNARs52PNHy2ar#{}$)8_>68Dj>ha;j2FYMf3TV zJ}{M&2H)VLr#B@2LT4Y;A3>uOdm8}{U1$%b z)I71Mzt5qBI5}MHlrtW{HuJCdY0sueb&S(C-%FH^&V<(BJ6P{ku0{t~;H`-OTunca zTC-5NH`3;V3JfmccYZ5e#E`ohD96!-rq^@JS?La{EzPsCG@F9@Tl2daI zY-gZ60P=BbVk2HuoYrB~rEccU16F)iBdt}GbaF$0Jv&^_%wRjj(}IE`d)R&B>DONM zt(RY`FR)R~v%8JhZ=_?|BJ!?x8QCMe(O}rkpV~O=dV5@L2!3)O8Ew<&jZ~lq{L;i- zazMb2rZxP?p$6z6LEwx^oTOEDlj2s672IHsuC6j*a}(ZriaMqS?=CxFazT9Ku}ibN zCt`Q@(KD)T(Eo@-h3;0Dk#SS&6G@tC`;)4h6aVk24<1V+G2XM;}jCwg6oa?lva()P6j5=+y^Fq=Q2Ms68r=i zk-WZL4^t)Vfe7{|T|&aQN*&E_alnTSuP)?4XNY6{Jl?Bcgrj`oi@0PqPixHCpUFQ9H$9Woi*ItKNZUtk~`*3!ER zGNB<9J*reVP`6lnIJObbaJ$D67vcbW<-0Bq0@ z1YCCWxK`OBELT=HL(l3X;3{J8BA}5g?V&29AeVMW6qLD-dI)*g%X+$so=*w25$lV; zU4vNS3r1aFMw_t)ZuTI%62HcI$gqPS%(Z~#dGLI(-ifAQy`gBJEJ#p7obxhGbp(k8 z#X~*I%~(*v1v)M%fGp14_=`Y60LC@nZOw%wNTJR|C@KgZQU0BA2+h%dI%ZcrXFa*v zdKu@Vu;*j29K>;g9mId{3UMv6Ay|yA4#1xNRI})(nup;(i)>!9BMyNr=Fi*greNF% z+0&tj8VvuQ=7JbufBR(H-x^(LcltY6OR9*wWXo@lOfLieoh*>bo&Hon9>$MlzC?b2 zUo){_Ur2|ADkv!mh;?16CmV4*gFg3X5Rlc+`mg$b>mNAt@TKSlsILPt0(@fx7`m6jzx-B> z<%VQqil+05e)EEntRK9?sA$CVI@^Ecno3}K0FSHW8-y=vt-XEQ>J#goJuKRDw0xof&b{$q#L+USnX#rqo3coJxz=y5)W|e%hj!CP~e94<^&py*qP!5 zbFc61=DHW!bQx<0-g4eVu~;KhOc!=3=4S?oBPf1i_=^T*N{xRI9gKS5&Mz^Cb2tjX zTu?HZv2+O8J5MF3t2hdh}yTly8}hX(Je{7h5}*tjs^_^K#UrGz*TF7A300kt_)5cIAGmbr&jP-fk;wy@(4#l|vqU z^6+OuK`kO{?s9xeMNtNkz)gB@Q-uQ{J)V>E$d|3V{~oh;>A>VAH$;8r>>u$Yj8N*7 zyz5lQRf_Ih+h#{E(5Z(ctU2nRR{YYY`n(IS6ckgTxDWSFxdnASWyt!xc254^m2|&E zmFH_y@w#H~;N0bc=V(e@O#u#e86S=`0eHxW2481kLG6}i=4(|APG!07Qgt=p_iHg7 zeI|pe(#q%@L1OVf)U=}g&>4KXb4ch)&d`CksxnJk%V>eGio zmEvn3?-Pir>~KE?_Wn$x&WzZJ zda+7&iIz&=yI<8hS!SyrX*BPsD|?C0F(c*~TT5x7M)KSqu5AtsbFPKEVZvT{x^g9W z@IxcQFhk@EuEe*LR$b+Q7H+~VWgK>k%W60JTK^mV4{&C1n1$3-O7P0(MDHcFiF6}c zvlXsH;)kK*a+u;REq5LTOnbfim zxJC49x@ih3*6&&Xww;&=SJo?Yp%R;px2!%3me6W+tB>dJ`lB1$C61^T0=SM>+z|ZTjoW%>(5B+V7EDWsw|GCwYw$=~+i|+dz_5C0Id-;R^2DI94VQo0zT(@Mhxl$nh z(7)jkoDQU^MSD|UZ@kAqT>(kPKfPAwYLs}w8F0wsCt$A5zY)&JGcZqEZe|!F$TRo} zoL&IecIt?w<9{<(J$z(ly+Z^GCfY@S%EPtGx1K&J{wh_G1fOr-PH>FAly2TAXj; zO#`<3UFI;{6tYpV>#vcNQL$9FQ86=q`;m4NSl3n#zCDI%(=6~96YhZae6-!{8HTIT z4L_gB-RuhzAK0It_}JKOx$T;g?SuOVW$A4l*>+x!(UQ`u1LDkxu?wQ$8AEJR}WQW?my zaNi8LZR#w)t*LFfHoLfzI$B%lT$TZNaQg}HQ8{*ftS*K+T0}apO_(5kkRDNdr_-_F ze`gyvbvj!u)qY|M^6+oTUq&kcemzFlC)k>l+*(^*#`j<;LTp_Se>@GL@_xs7z|2!T zVjOt!EL{&7Yj?n7+|h!P-5vC0z*d3I&bT<=?r=T2;qzKAXa%$w(_8lC>hyDA+Nlz@ zoA(4xWn;YL=`m=PTW))&|Es5yS2VLLFRu&vx3T^0AQ)fI?#=E_Goli}32u-^osGSS zQxmZ-`dTZWK20uhukAo0V0KR?C1WCFWx_O7ObQX@u^NZ}u0Pzldvprr;SCH%d+kbN(-=I|xr2kX82$SmjI z#iYRd&_^QTmqtG))6ND6D(B|BC6Wb=C86{F4dul#zmkhJ_X#y<8aTW3YA2PB zikSk39*^^c#FJ#46Z?Q2q?_OP?TRf8k~M!H$tliR>P<0Y;Jb#W`xQYTrzD#W^6_gE zrVT4Ir_D1ueh)0#UwZ$80uCb;gJZpoj3dTMkYQ<jE#VE~+ zn)2@t+Ql{N$&2f_P8xOdT}Al9eHpI}inBF0uXGkRg>YlpuY{0C&+%*tlo`2I)-W&M z%*m47A|U!-(ha|!u#<0p!IS=)vUlcrH(uW%T)QvC$44}=mj#pi4u66m6G}btDpyk< zpu@uS0v~bvq+Q{*@b|wKH@#)ix01%D>&7 zQy^)#xB2H-K;EryxLL4G_$0qp^Tbc+meCb$00SC+v;M`o?ujvLKg zsu6b^iH;!-@p+F80ouk-4&$E^LV9V^B@A7)vj@x}%er1hEoIjfR77!h(TtS zcXl{ETH3EzqF8QKmQh&Rf9J^XYL*EYCYD0DhGcz50EwKvhM(_f13F%F-?F+!aquuh zf;|11L51QJPxf$Znm_|jKMr)4vS<=2*%Vgup|UCrh64+YYnK>?{}sp>xkkz)WZ+Q_ z^M%MN!C3`xG0nVKO6_(3*VT{D1Y@vU>FK+ zChhI&$%XNGImd1-XPRr>E(1_-0*Zd76bm;=movk-E#MqrlBtvsWB@Zd=RGqo0t10{ zOnDL|{m7^y%1ja12RSp|3^ZofTz5*g8v7&#fV?pv?j8=M3dC$@qV0qtnQ(AklgdRE z=d(Add~~Y|hTwEB{dL~+cyS&xEu}uB~$!>}Ef^JJK9Z4v)&Z89Ag!Gl| zHxqUzD#lNIK%=RP5kG3CW}$iIkwsquP|oH8#wD;HU{QrMt`+(7$uQ`Xvk9yraLdXx zt-3964!Y#&hE0e9S1uB7(}sC>Mz0Obv?lMQM`@5nQZCsvUNA6$WFn#@=3Ow={Gtyt zWO?Y!Y3b(zNPjhq`v#Hi7|h>;)6bKZ!$7}!$^Oh8jQtsH#L|_``O9ASjy81w09{kN zMeF6EQktriHW4(KQj;*DV{X_iFk7`jTVa4mdkRMi2;dW0Oy7pq;wivV$S%;;$MYSbLs?2q@~d}@AJOY$PMaZ-bb{fXh$`6S06fJm01(1X}0kD|8B$aTVeyfYZQZInCRC8<7mzAlrU zU$?hEo3YVn@!JKTfeL_-C|aC7GVZJY2;u8UmmNCE zBvX2WQdT}FPUa4km>qlNPXIb*GK6@dDCiw4*rp$i>f37ox=!Jy)p4Q<;DJ$(Ou%DD zjF-vwzU@mqwvx3%lGZE!@N$0Is#OVl3cPcU%HpXCdrGu(iN*rKl7;BPwYP}3!V-6_ zIz_@szEH!URf`y}CeERl#js0N!_3eA_gGkUDm>LOL`YftDS{#{ySre_#s$j=rKV&> zKD!NOF_x0PEn<*;H+A|Z04v$FRABiY&$6{wa!T+p-zeB9-4l@r=EHw8@fMwVFU>Ic z6c4NBFxq(bB_s+;ZBpDMeKUU7akH2;A>LAIM2otaZnl4)m2$&@uNPQshB2)D2C;F2 z$=lh$baBO^wBx3Ar}%zo1PJN+x->*nfA#KWq#A3$fvdRBc7w?kP|R7!_=jR+PHs3S zdVITuz(~wCBs&BC)c!XIo2zl#zN>N6k;LWLtOvGq-xJ!uXm6JF>2)napIrhX^V7b_U{wo$JIwGL;T9a~sU`@L z;i7uFZ7)9SR`tYF%oU>FYU}wxx2ESed~U0vDM z;hLL`e2^3uPG#}z3&O>*ReI-y-8FBxLGr+D(|+!bs}{;D7<7-U@FXFnPO zkENXTl`p%&17=VeU!c5+@&y@zts3XA%`^h2sOG5c14AjF-SmyRr8YChaV{*gO;-Po zZh@c@*I9A=9_Q=2So5VrBs~PL+@bYeZ{nL!*)dcqDwk`XBk6&xhr*jANZ>Ru)I*N( z8MiNNI!Iew-x~1OF_t?g{>Ec{sSCioiSpxOmHH*z0~pXe7$qJ~xK=<6^%_5O#F=3_ zX~15on82HG@}e}cY(2-4{csZPG>rgD5<26*hW@viVI|6{jD# z$?-nmbZVbE!q;-7vzAVeyzr_#%@v7ZKB(S~`&YQ#?zOrPKXIl|D6R(|S^|i&6bO>Tug3ZwJP+jlG6q6gdU&QJz@XASJ(!#Y_^sh+8OQ zA6x@dC+-V!bcA_md~x84tIV4>ld3NuNw%+0_yCGr!tf(YYN@yX+?X>#ST&ef{f+tV z$H;myUmEg{VP)CuX5(uZ<&3wpgwk`mSi^f3HlUTwcEJ^2NB{n=pR6}lG1jslB}e6! zgt4Ap}jcJ)o-jAWCASvabK-@zlfB$wW{v-&0+Y@+?ysC!oUTscXzU}z=6h5 z8z6xhx^p|RXh#uagjOu5tzP+945SKl;~d|Jr>Q!I5wh!xJ_`BPjSZw*(Wn*bbGW+KJY#M+s^gI(EubTaA4)$ndjvBRQL=f1aw`MZ z394~_$>j*Y^n&r9hZwh`BF|O`yXZIOAO5=Yh4vVQ%?wdj9Z2^4*u^XbW3?PxYyf|7 z&_&N6$NdvT!62S?0uGl0-^8D1hSUL;j)^hmGzEjwm61OfS_7SVo!b0#jfbbvH#LF$ z{}@5Gw~~*5x+)VdL)~saeQ~y{@s=aov7RVp_1mjw7yaCZIo#b?XQmi!BbY6SjU0y}#zUbv?r$&S>zY zJ@MaOx)_Vxx=v6||J$A(*d%NPJ=)o4Z|MCz#bEREwso}IseCN(Yaq{jQj5VqN7m|`z`qWu$v5I?CpLRgr=g2rf|3<7@Kzri>gdBLv78m5TtIch8c&MQ zjKQ;=7sr+{%Pk`OqouS<&2@``KXcS$*G$rRqQcM}=WmO$v`_t00GWY0^;5IP8P9K* z^M6m(2r^vX;P}E~Jj|GCYyBq2Bgj(J3)4|S%r8uwAkn)V-T#fK_ancxdc^L`Bn3nI zXuR~05{*W^iDzI;@4HV+mkMv-9Nj@09>fx{)N8f|Svo`t!d4Eu&!=gnU9#eB&`h+? zLpwMS(kri*!;@w50kqOcF>~nLs~FD6tKM-qwe^=E ztiDz}K7-jk{&YdFJjnQUB-!%eB5J)!RD*iS>g-6TcU^Z?O^q<|=)8W;+0`eE^Ie^N zfqlBMpJUC6rF}Cf?bK&TcAIp(t+~m9QJy?Ri2Dm{8*_pprk`*Rwlr{pi}8621tc5j z>NZ|eyeG6}t=2}Km$WC{!QCs?;?58%pIEisz}>Ac&l%AnbYg!S=hebxJ7d`VlxFnB zEAT>Qe`q0AuB}n~K#X8n_EoCU#iqBSbsJQfT>vlySoZG!9Vrj{0fm@ZSpOF&G^MR& zx50t_UrJP8DBoX^!ni#dYD>`e)diZC1=$3Pdh_G{=454aY%?2*$d7m4(4QQN#o_qF zY&>ZlEv|$1o6VQ-v)eK6^vx&=sk^JK+c8JZoR6^5gY(-{>-MbAxAT{`S0cVImL8d_ zQNV<;E5Q5l#V0&fv~i6o2NB}n;Untf{l@PN^*d5sfKuV6ywGoQe=v}~cIJWoWC5Xp!ycX8=iBAYPNmxqH*l?X zE$*%->lNjxCw?8~MRA{VL(Y%#qWwfn56Gd3->V<(_Sk%n)c)ST(T5`baB#1Stdjn% z2i8(0IwZ|Bk4GXAOrXm27Ss`KC%Dokl>==5>yQU}k{U#&hC+|Gg!_Q1Y=*0`G=C=_ z=qG;oWsEg_Feu{`Fh2R`uhjO~#%lDM1rZSX@bgkTzq6Yv!@ zcei`7mo1k|EmjcXG!mNl!7@(T}by*y(mY?G$&9NaG=<==s-YfcI5>U*xfb zoEN+MV|#V%Yy%V&3zr19!oN8`h(OhWr1WTqE7+xFYuai>y0C}A<$#?x9RV7^2hWhS ztH+$uHWbQAZ$}aXjQ5&qpB;Y39H3J7q<&jrN8;tKdL`Q$IMREJTT}E`E@8A{9dQ69 zetsv!W)T~iH<~8Xn#1I>L)X$OPpODWd=)XcMRnQ?-IYNyfqpZ=?#w*n&cy0l{Q3?q zV^}ctG&o7R)^CMidTi4X&dST-#n)FDDl!ywVh))UV!c%q<_Wd zRHsK*XyvaH7EiJ9&QMCq+a^2_L!nnL8sxF))|ezUWb}J93df*&Vt4)VQ;lA$mb^4d zgZHKPUw8~_bN7;PlAvWBWFJqa^5t>)!>7FN6#9>^CGiza~{ElWMAPYMeQomdBlV{!q!eHyWhb|D%#-1=~Z#it3q{ca-* z+^5N4fK1yr;Ib=2+!t7D^ndjG7SHtaGcI(=Eui9B*| zYA2@qWLzYkTYI!=A@a`6UrQuc(+nUKw;<5ycC&MT;X*&cj$iiq$B5acy_jWZ(dH_g z7RIkkHPs-I1Do-4aB>L&42M zewOcs3DW74n@7v*t0`4hASCDHG9#lIV6WEms9LJyb-c)24<5n{@XBOdS1nb|MwwQy z3pcHoIJJ64@$R2qvEeF9Wz^8L9?URB6+zD;78U`y@|g_DLx6=9Lfw`5pn+qP6v_>= z)kq>ux{$=z`(~gORQgz@39Deu&^#TmDij1#Rn&Fi6sOYrDiDW6%jAT+@}@t=!vf@r z_*UTMQ9I>xQ9D+NXi)AhSLN;5wa_!EMKmPp9}43#$TZlxnQE4lxTEn~z~W3rlpi%f z^H6WSSg6;p^Z>Xohgd3eyB*t74wO_rtKSYQ90_@8{+gP#Qc0rro6;9`Q4nI-yQ7DY zFCGCCuJC$Lh8*6}yJa)WFMMRWkQEV}_BlpCM8I9J+ zEPjKTY2~0H#Z0v5=O(+)$71_u(gv4LQ_VMtXA`qmn*hf1aMVi1YmChv!2`1wC+aho zy_s)H{P`F zy>%4ei37?F>}gAsrEg9LRTAa-_*8A)HyGhSa&HqN=A*Q1CTc<2ENKjXYw06f1y!~r zm7w@L{2uw|r`D`W3|fUfp?jGkZ+UvGF1a>ce#Iwh?%E5{tT7`WzP_56RLGWssnS`= z^`CAQk5Wv`rB+#kky`|k92!alWx)#!bE!%60H-#7nX@)ZR-ptE93jw-@e(wI>SEnihqF{DlrXHAndZL*XG zhgMfEUqdH-T?YyWuSt^VN-0Lst9MVfXvRz4m#!L2jCvXc_*@z5_&tNL?;c!q7fowC=&Bcth? z5Vd<6(BgXfAf5S8eDzla#)n)@{-wzU@FcWQ;q%)`u9-Ee23#2YqB$^H=E>FXq=n}< zkV2{rCm}UR%(AVJaBEUY$4g^hDvnN3aM+n^n7LItlkj44Im+FdiVwaBU-N9S4f5QN zc!ZmN#Di?}BOYWIEH)uYHmNP7j4Q_Ckh$ix1RN52j>0C|eVD3JMm{yBj2D14m{$vG zDawUI;I18zm*($yf8GsYXR#+oyw55?gZ6adb@u~Wh6&uVW324eq^<@3;*`U3eo4M? zs7nryKo6Uq;mci+UIH{t>r+kc+#e+BA8NLpO^#GM{;8DL*k1Kce-C%Yi_aiF;F932 z$v?vPy0}yfp63D2p$O%{*9yiPQJ8`&(5j)rC4p??1Ta0gV^+zGO9g-$n3n-4$Oo>+71|X+JSgyNnd}t z#q3Rwk#b2QK#T`UYsvvFGE>*php&QJ%vklPfn{0e`@?d;jSu z&R*~tJ@7!ZW21fR%x>g21li9PCzSy47v+?)`L?Ep`(k*ZBQc!laVk=7_#;oNr!Kgj zM=>{MIOwQK$X@`pbuUmGwoMQI9J5fMd1+&&D8`MMizU=X8Mg8a8kD96=%#~d(p`4a zC%fHDxoJ^5d&+jMQ3H!gUylHQ55v9kRs9CV>QCl-q>ex%3$H#By?qWL;iWy-2O4%! z6$a4p`yBst-NR(T?KiB5Y<0vYSyAPS8vWK$5~~sYLN##VZn@a;C!$xg^Xog%iiUIASGc-9MJz)A_{r(m*(5_bmgKe=<|&n-T`T zP%F)Vg3)U+Dvxv3N>9JgHtN0(#nR?3wBP~Z7WePVw#(Wo!&3s)w)HZKbWk{ z$8T96p&9|Ba;e-s#{@c%7~??W*Wsikel)9mdh!Q-m^9P>O<4Ag`)Q9eGybpWieVj_ z|J<>@uCTr#y-y&i5@*5sR%92jdW#=*d|ZtFIol@q#*uL?55@Z=WU+icwssOyMi2r; z7}jKq8b!ih7=|AMySC@W#-yIVZW(u&@_*Pncl{6@&%;sO+*}^owFLa14$k+F8N=Ga z-QLm3-TvXn9V?K*klig568Au8M1wj&URc^xFh-5fe^YLS>b)+2Zw>N|_BY`D^k!%4 z4X)9sx!R@=hj*v zTLJT?|3djNbpcNNV3rMhb)E#D z25n=|tAB^q){aV^{lkcJZ$4z(%ap+go5pB;_W-6tTfembqQc`T6g5c!l?B3W(0J%Q zX|&{3FC13?Ow#4Zc;x6DqL39S2g`BNcu*B{nKx7v*PJqa7YA4sX&Wg6Z zf@LxjCFw^_ZP_0_HJ;@32--sU3#LE=GHv4uA2v=I6F^!|l`*rUiw>)Q!zmkq)j6zn zmwdJFM|sE;xBS}PLvNk{S6VytCqYcm{HzdKE%V#{eqnA(jW;zC$d02B3jk2cVAH5R zB9PSgOT6LMqqjF1Ca-fhCV67eBVw};LC%T@h2hl;06ykIvd7*C*}9=eMmCp9Ae8D; zlYq+_b*GCT-1P;Xv2k98jVhD6KeHgIUdQW5Y%P0Q`7Md z*${mzbx)Muye`j)qzpsJd;|20O@OzwmUm)Nz}(8U5n*b(33mqA{#m-eD_d92>9bn| zn(RyFlwel3GH{3tcog&+9AVvEQ$Sm5T}J`WQt^)7YY&E_+3Qh)l_Y4wp0@0KpoAsAB#s>UF@J31Z-ZMWf{bf$!W}2vr&6;j)6}01|&q|ievb36Bl!`4w zD#PlFPvnAUPReF6w6r)wETi;~C#q1UFYLQxK}=2x$i*h*LKq)up>z)7-QX|$mpn1f zSJ{N}PP3bm18Ml8dJ&znf%dZ!vcw=UQ^v<(9?FJGwTRxe04V^3xU&j0k(4~KE#s|R z_$LqJD8ZMDHJ!z|2PZrqE!o+Svf*BWUnD~wPQ+JK0ft*%(o!*^u{u`?&gvh&p5h+N z-{4Uh*ZO)1J(2`e9A{Sz?%cm%ZY;8V3dFX24$eyP0kMc$3xqha9duwYief{C|oG0FnlfABW^$SvH?9%vIeS z+;(zkSC#T1O}Ff*o~l({(Jh?y&To1#ny2_{Nmi9Ddel zvs~1`{Bip{qDr3vNBRE7W?J+K`#gio5D6q030@U6@z#Kf2jX_+Rp7BK9C=svC!sZ# z=a-{Zh>GnF(ou*KI?pfneukME;An@w_qjdf>tB3+Ciilltbjf-lwk^KS-RykPkK{Y zxv-}u6=4meqb)llZeTz7_TR5%HQbba%Yq_y&RZfNDu}A+lsd*{z?}l+#w4@;;7s_W zI*zHE(z*byjW-R#$hzi!korXMxAH|A{j!HfKgHEx@JZ#|&iY(%>?1=YG*}72#ie94 zL!aabD5tBESj(BN5ruSFP#thaoUOm*GXKbz}<(S1T@Yz_;7czfd_ z2w_^_O$m~DphHAVlAVN`(i9yTZ@@Vrv#Wh>dqV&>`e5vBnP6Y%#16V0wqN$sExy+5 zHr;%M@~_SfSsL+6N+ea;byOE;*{<6C-uv;OYG)mwYApzsRsAFsH5K?5ZN!kA`X-$< zDktZ70%%ef^`I4#iy4j81gZ`J)$rQIvf7VI<^CpR41os9APJwvoWIbURQlD``9y%7PCVuiagk-d3bET1zwc_@^#sG8E~jGg59 zK?(=}A^jBvE*`AYlNL<<} zD{Yc&{l&{mb>*w_yp%NkCMk2;WZ~eEAp|jGNX~zgwp29CGEE2Z+BTp1LlLI70gP?| z^*`bj`4MlV9upfVJfS2>i zN*;|ZyE(;8e^*jHsLxM%eSgZk39_OCROMMmf~1{vgx0fHBqMM)4s&MCj?5cR_7Bcg zN;LLos8Ob`q||kktoGGdO1!gJu?VZMq>{YQ*|Mqa>u3Rjt&Yui$K~iIWffCtb=GXXIWVhtJnvn;5@z8V|Dj&2rs@u}^ z8Yxw=b#hvpBWuAPloNO5upfsA=njf?G8X!Pi2YMkc&%SMa9auId*XGFKV=O3H}XZG z$Es>rL741FNKt`aHA_QEp|~Ei6UWMOX2b8-A+CK#GRx2)r8~+Y)>k#aCelGHSun?% zek6;Hv}8HNt;t10)=D)-Pz00I;FIXBW<-6AM6!`^t-_eg<8zCnUxHLjQ7q$H%xwnt z#kC`cf6p;e3|-T7C5QYrEI@XF)ar-!3mkPk?W#F_cB$ELA9M`-o|1J}xzE`V<0Wx>- z!0SD0`@`@&?U-1fO$TYrpXe{GbPY&k7@#C^31k_f@HGV8^U~&^st3{T%0;Az!ZZ;7 zXbA&z>I-regj#?zKRjX* zdc-Y#+0?WqeA!af_Jmc_^B0OBMi3-*B;S)c{_lVxkg9e5)DrMYedXO&1~AE zlqYp_55=^49R>B1`nHX1dYo&CTyBzS+yEAhM=a3Dx`ffh*pmO|BzQ|@yM~5@EOoRz zq{ULc!MZ;cAfuG$nI(J>1Qb|tfz&&I-q6!;2Eq+Awv21qd2kpn+e(MW)>dUcjiGUm z`K^G*rUqc!p-EwGJ0FRD;?C)uU@fP>gVm#5amv$1U@{ahGs)OIET~1vM$qZf*uVPw z1VjD61FiOQ`bAuY*yYGcG9EtL4tmL4p=dG%ubkGlAPPF%7WnO=X54-DWXj!!+dur2_#*{m7BLPWb<5@DN_7ddjGJ*fa$t#n*U}#Hr=d+FG3$2Kf_LJ$APTPFGD&Y5290MnQdAr%G=_6O>rD`(n9T)T7s$awXXq zGPtmgB^*f!U*P>r*ik7fg=$k_6I%cthv?pkFJjjM#jRyTfr$k!VGUgv3&0wgIm{$4 zeUT=|RY63)FmSfZ z`Z2Tu#p=x=IJRr|*tsY-i(L=zBYJa?d6L-0pf`Wh=%#Os>IH=0M3#TPs7 z(Q5+;HLGZ=y^IwBl~G_i+xj*PDVG}At*q^I6pebhvmqpcH4%3V9T58?tUExmwM3Nl zglNHd3#n*F@p80m>nh^Qjr#n(;pgUN3sRa3b4<#1bB0k{$74mT=-i~T(~hGC&3G?t zy-FHGHjfMgFmrZoui`Abo;;Cop{q&221n1@2zXTX`3kOgE#mk`083;rBbGDGZ9<=2 zU6koxZp}BydR3m>yiq0t8U z#i6xlndUvKrBB{{LtmVAmi1=g<&lDg`~D2t&ik6ktM5~yQbl*Vtxe)eBIkAuS|R_g z!g<+Zx+R$RP-Sv$m9oLYD0s_91Lh((fGJU(z|#GgER)9ESY;PB z8Y}C@{Igj0c3Q$1yYSp5V#Tc4nTEEvkXons z=#~_>)Yz@HHMeB5f-W~(oJ zgi4Y|dq#rznF8x`4RDDI5=5{y?N#SkSdJ=Eg>D!U)l@3ZDDf#OV%FAjgT9R2T(0ED zrcs;Nr&Y{g%+llNK3gC=Mrk*dqdIU;mUo!2zr;-HkAW?U#-o~rO%)!rA%HwHo#m|y zKWLnS$ZYA3l%{~Biq?k%tZjv}FXiJt**G9VqREc69!Aq;dmpt6jI zr`41Th;PWrO^ovy6XW3TVa~59?PwZ*JMje6(8Ob#!r&zbLCZ6naF0}I@~4&oMKgYc z81NQri(cAjMMPo6dR8Ro1IDDd0t_U=|e@x9eG57+h75-?Y6X@_| zF9#VAvbIH@*@-!3WlwB7#t18pD9(<(DM^`m6l$_Y$O*8juRRYt|tEL&WHLkR8!*TG!^!QI{6-8lqz3GVLhPH=a35AGfT z-hB7I_tv`i*UVZor_ZU~wX1t|o!S-plr9Z;d5!&cz#Z|FjZ0%m5qR5#$H2Ndxr0f=2o_R4Inp2YeD;j6mbw^rAFTOhSBw}!oLI`9eq#$ zsKDYi2TOsjarxcH_V=AMRy6mQpAc3dF`^DI$eLV0+?i*z#ApUECYO^A zCz9n~^r2gAN%sfP)Yi}62Jc#@!a?DD6A;Cm8H3995Xu&*c@=nt;_dx@N^V7fL#3|O zJe1tbA5k^%-Pa)zJ-Xfo-Z1|iLOGT|w9;#(k&zcsy%KuGTN2{bNncH6D?&J7*I6b| zgZFRr4xJ&e8f%~Nf@Bqs?d)B@#%#NwNn4E*^5OJ*GMkSUU9DqP(q@!sNYnWEm=6jz z)J(Mbw^~_sOqRA=`zrI=80K!{5w_YzwR9*L811hK6NlOvkxMq@$tOyeuPY*WkJbY> z>ezvf^~9NhL1=19LwqxfZ_u>iW>mT7EcDDa&bU&o0=d#g)>Gw|o z7s*x7VtWZB)ZdN;*J1Zf_G~IUJ2_Bx30kBqbq0+x9jo2__4QSt0VYB~V44-Ro3Yck zMomMsfG_bKUF#_mBfkoedtRUJDj1HVo`=5N{Q3DbW|J0za?1y-2T1zr2F#t_u`|0 zS4J@C?6)+NdJgOXrf(?Z#iCre<6$HYoPBI6UEMkaW=6{t36(19NB{63WRCb7(ymY4l4QF)IKY?2FmI+5 zCmyxZuqF6n^rUdt+#5qqJ#*-RJjWMdJK$0rl)m>flS}1?{e_M2;6BS<4+{5*1>>ME ze~OgzUmXIg#^-oR^zu&Q3_$J(x1aVn(sWmpw_VHb<__xD(Lgxu2-Y`Ri<`4sHq#gU z4kslh46mT>@E_NK3L7YGk2t(-zP)b}%&kLzA#3#I6UTNoKF^Ul9r%jG;&kc-z}`Tq zVJCS$z9vnKJJx61N$TnN21vr(bEu=rp+WQ85_ae548C!o?uJ=0QG)l!qLeN5q~ zETiZPMQV9}XiiDKVJMTrDB%g(*Uego1mz;X>DTOtgu%vfgxJ=@Re0-%_Jvnh zOHj$K>DpW{GAIYN8c5&h@N{g(jE*Hx%3p~SC;lm9Pl|v%#s@ktj%a_P-Mx5!BT*bp z*pCXsunM>EN=qj^H6eot5=r}vUPSZ3>ysq0xfVnOL{#OcdKvYC&y{52$&Kk|x?-#; zf)7s?xbv8+2$D#tLdBno7J7M1j6SCKqKPg=e6nb#lPF6F_^fD+l4?7^QC2l%#$+UJ z>--B29`~wrxy=EfTaJG%&XF$dKp$zd;$^Z*i+bjb9VUQ8cE>W+$-y!l$5~ELurHUoZs|e9fxk#v4H#QO}b%(JYrroJe5>j*1d=_K++bjKhEAt|)}0@@j{sDdJluaC&7UvBusTLV(R ze`*cxc zVqy}%EaRbQD&wXx&9)+gehaIN%JwKe9rveY7W_rr>Tii0`-E_nguVFX!}!Yu^2_1( zA7wne6EZb{0UXKtP}D=ym=BH+Hm3MCs}sChU!I>rGWO|z=J_h{F*d81#G839%DYkS z8EqegB?$lhW=vS(2ThhOwkpULgY(P3Yh&;o}Q zr%DF84`0iJI>l}CqBLpy>Uu9(b01z^mMH=HR?Mdd;Nf`>ok zxh_+Z-6OX`Pmr!C=w$#$D3)f3-Iwi~C&lNo&Qr<2bu(&ogUO_E6k_CV7|dfRu8Xfw zCd`i#<_Kd0ZkEFKSBe2&M!#s#U50F3`yZ6MncDkfJU2>#=Gq3e zOigQNKe@PnDK5I6aTSuT)0H2f`@PJAp>1r4fL+C>B7dMDSC4e6En9cAf12?~niqLo zZ*qRonBo(5bto6+nnj<9Ng`a@V*9uWAkjG08j z3g16}JKZy=gkQ1=QgwT{kbKw-oF=#ZH7D_A?n%Swsh;EsMV;1XY{@fqOB#A3ggO5E zP7Abo;_3B^F-r3xJC)fF<3RZm_)C6-m*g)2lK!sJafSD=%1Eq|*4Oaq9S|G>?#&8+ z;j-o-Uma6inP7#pUzzO4zOfak@S~)cs`zzO{h&xdC|nidg?fvbGwQLh^vT8~pY(H? za*~%A=E?}FL-6uM<~e4E zKP`iwv+9yzUF07z;}2$^xmS+@xR>!LhGZ7)=4-fC6dsCrG3Y1AEdJC*d$9Q?IOCO6 zp+zi(Ep5x*1XwnB2scqH$v*^51Ydo(^5>qJ0?lC9U+q!$@54tPE8xaavtcsdusHc- z{KcPf6B7Kiv3myj_9%>2e(~U`NQQ%x&Wk1IEPtT;0C}M?d1n>v{31VI*))Hvc#){0+euXKUpq`3CV z3jW0r5jy1AWz`{DVvOHewq@=*jo;9PLw8M3qIeryHjMQIByj%%A#AI@A#t?v7?YN# z!P8SDS;+=foZQELc^@-t>Gjdv>t>nD(TS2ZTFySo&wRZcH2>P(8%F$KUO<1g?DviZ zSyXediIR`7y}W>>G)nCa7l3>cQ4j`U^_7FxGwL#L1T~Pve?G1#ca?DRvaNO{OQp-d z@n|stnh%cVN`}n|D9NE|atsGKIZCR;C4b>nOXn$a8yiMN=TP4o2|5E^s%HlexnyxM z%5)~~v0zzufy#N0XUm@29z!I}XR_BzhAOm|bP~6uN#vdR`y>u|TKZLP+L=%4k7{XO zcFV^2w+Qua6O1kh>Xl$~DJK=q+yCfXaD9HdG4*Yh2<3kS?r-QT1VA5iyseE!ZqdFRa(K{;1v6jQw80-jA;a9c6?sPK!E(A3CAg7m{2k&`sO z-soZiRz!&vz%8vKj^gJ?OlFM?%UOm$J!t7$G-#=c!pIiuGD2f>LiC($in6JnjjK|4 z$m03%cm)eXsj?^twb*Lxo~8&#o9NzIXQ66`v+jL%+5av1gG6bCDqBU$BvC2@l1-S} z7C$y%txx@1Z-fAe4lq;=YF;8;{WiCk6yDk(Zt+J0xFqs!FaVUt^j8IlcJG`N3Iff1 zi=jVqw+SS{dpm@sHFXR{>gy=|$Sd+51$qWj-NGvvoSnNzfL;%;Iw>cfOBLwou1h=w zGMF0Y2jQyQDX8ot!mgZN8j+-j;XqH!u2<3aos-M2DE%vL>4PuAMOPgvL8D(uB+!RE z!{c{=8NPU?dH;$MP`wShod73Ffljhg&`F!=9BD;aItK!~VSTpJC6(K8-D&Q2rQo1T(9DmO0VgaeexE+m;O!^!y8`rPh?pi;cRPJoLT=~F|iC>6K2~b;|E`U(I~ud zn|R|a)!8;l)!iiHP%jfzgg=2&gb~ihMeJ@=ZwIye-1BI>n zqaPg%P~|({E=i%EJ`P{*LSU`4(_)Rp0`=u19VQp5X4|YSOj`0i+*K7vYI|I{zE&uc z)CRoC+zLIrD6GThMCODc{gU3wxwus!TUgKx1J4{XyuUzb?q@Nvm4VQm*7cW}^8ve!iSSndM>;b+^T{HF)%L5vxas*TU82Z|%`Iho?j7f%qkG7x8Z+ODurA$#G0xbAK1f!Lvjca7<)+i>!(wm5pr zY3>78p!7G|O;b+wI6QXU`mXH}R$$wsv>romZbmb42^@FEJOhbmtOQ*5^9!VBD~I^= z?rSTLq(yg>;{YgvC37``nS{Jidly$?FsFlU1#FH5))nn=qT1XsOz;y zPHE0<_w@}THEFa$`OK`iB|p7H)s%Bk&64i;ztMeGfXDQg&M75GjxX)p)5Sk~_Exyq z(lk6ZapT`{PmC@#;Wg_5nDniuUUe7rs?4g%b8AhKq{QSOGy z_)iBO3>0tpGZhg%M=UZ-{h`MQ#qAc+mch*ulYP0kx4gLk{)r5Y9|SFus95_*X2v@t zEsv{DVOtf^e+FV@QnHfobGOx-qRKLHHE5sxzSd80<_hLFlm1=v%M zF3g+JBdVfCw{Po!_0R12FboNp#~2+4DV{-xefDdFq zEG(@5si-rhz2UsUiSD-&{RWBVN6N<`wuw-HWijkbNG+E|)j}Xd>7{5ozPy;A8<8Xb z*3-GG233wU)HFpIE5%R;A2me0D;bn14$6)mM)Z2Jb^K0QcbRfHW`g%oh@<;E>634{(u#n z{C@h~#}#?7J!tK2p}$LdQX?67AN-;HE9-kObO6JcK_ig-?*38- zB2pf!)MOk)#yg!(_&^zhPt-lq9&=?_27{q6ks@p@cA>U3`Q982x$Vr@j2W9NYUELXwRtpCwBYKG!;Af-_&%Ra zMx4@GgLuOkfYC6cH2@VkSqryJ_%9s-2K*$f#a>sJEZ1OjZMTXuG4Oo~%?#t6k5@63u9GcpvQgqeGs0R4RJmB7 zA?F<=fMWEjDU$3HXiYiDf|(SC#}H-dd2v-Upev&Gp`Tad>WXI)14b6!EtWFJ0Fh8z z$S1KB?`94cb^T50WNP<8yHO7{sE_hSL>0Qwo=^2Yt99c3Xb1)6sfN@O_TDe5kDFLf zj_L-Txg&>PhWffqKhw9EFr2h#vx<8$bNm|(Fwi8k^4pmdg11iTwdSut_nI)RCyabm zEuv4mek~#t@|SuEIhx(|jNW`5Rh^GdB0rh*uZG4p6A$PmQ%qqr1np~mCk)6~D0>_G zZWSYQ@TdP z2^i!6LHo{v!PEpcj?r9%G@sdFdWt~Oz@gE0J`tDVa*kadHWCI6e*HK&M{Kz@_%)w5 zT)$aSdG8}VOQ7(T-FG>vs1`dqW4&+MEjnfNROzYX=qF}FrrE#JgP~wodc!|Jw;I!d zH3(Aer8ZYReB_b>GpzM>hYNL}tUg=_1I7$7qljbda`N=PtBW}%6&oeo z@@0R<#Zvvgd~k>DKY$NPA4IxK(-w&@VXJE7>}VBCT$L+jJUsW%;nUxKTK-J%dNa%i0uwI#N7OFDW@Aj=m*V+#4RShjLd_Vg$oGqZTHI!a%Nn z9h8F+K6?3$vVVn7A4JhzK41-5lwi@P1;`qu7U5U|pGtU0oSNrO$wn0P2u{$UB z;m9tP{=|K%oD1@r9v!fzQB4<2hP=yJG^DJv6 zAW3>Ss5s6T*UoYQJ@}2B>MxArm{0|};!3L@^)pso6C)CtjXc(iK?S2pugw#ctK*M{ zL|4~wsqO0U$jwyCeFJEU=TO1h_HfyiZXZ%>&DigWjRc*0z<5)PPH7~O1f~@Z@eSRsM|A9&dfh?wifyK0>CHiAB)MUR{N=jQSd1Rm z2X|?LiUK;3E2`zoqk54lm+Ttx5(pflv{oxuJ|iopzxl7eMqDv9#g(#!E_xi+u8c%x z_}S-@%?l^m{iE!>IKwT_hQK0Ib0&@k;>nhLfeqiYYJm&CgW3t*+r#jy17V20$x6(J z>`v@w#bbAujl5|)MkrWO9hjC#XTEP%AAfGDzM_e>r>KAx8>&0)4)i3%G5ilVJVjO) z?LB1Hd-j;XfO_Iopeh466}^@nBDSD0Y7^+}38zp##rr4SShi_3poEY-@qmuXW{@eS zWL)*Cj*w1ez{2U93PkI}wmwvQiKyDbzB#KLDchGx)qM$lewmUe+%Y3v#lTn8c?KHcpmm&bj_E&VP3t_6U&wzTr~a!%5>+r9?%&pGhX;qA|9qC*oR;Pv~EP-kg2)sAT0 zTJ9kQJ5^;-&5q}Lq(93_%b&bjH$W=8d3kx*?Ni4}3vnb@EAXS@9O=xqQdw^@SG@pF z$FABs`Bx)eWYCpk*|_|BhYIj>wne-W$m%GlXWV%=`lZQLa}-zUthm5FDGJoT3O=lZ$lyRAQi{+2+7fiJ7j=C%JyzH-+r`QwuOd&Q52#sNu^yI}z2j_tOT+&$hM zIVl`V07|(`vKgJxz-bcW_{oyRQCF+4JDX)r*JpxSZ;p>YH#FMNmi$J zb*U>nhAKb&z)@X%q&mlnoUGf{t2{chq`j=ZEqh%#NVO@}$lK_A{(bOUn&NmXNUJFJ zXdtd}b%K-<`Fc};SdRSy%}hx*&KrMQ;L~pahwRV(_V9P?E{-kW>WcYf-rW|N6VW!dE=cR)}NpG~?1TctX2&U7u|)bZP$r90!TS#c5Z&4=i0yA4YHK zH2Q9Buv>;+%EwjM-EAW~&5FhO-8y-&WWTrYUA&jA3_RZb!Y&(swPZ^;KT?<3Aes7J zjtly1K>n-m?$Adc*mI<}uYY$eRYce3XgF z8_U11d?nQlxX*2?aW^HjgdVMN8luL^=et+PG>;7P`pKt1n_*SQ@Zj*{qNaiYX$ZUf z@%(KFL;QLQzv%Mz97lk!NB7UE5BJrM)ywOZU;c5Vk$xsr(iCJ0>xC?E>@`@6fc7RK zL3K_%rP!|E3Y5f+blaJwiys#~QBt4!K1f7K>aWHC&!1I7>8QoI4_Z6_{6VUizg?6K zu8`56XP--Lx`^O+Jll0XD1Zm+x|dcmG#Ba8YtwH`R3~q(rcmUlFx#!oGk@hQ?CLh` zQT4`BTS>C-JWGRJEm*wTt`j7^>kH^0Am$^w7+p0Ev2tTEi{3cc4$q*~@byD}MhMCz zG%wi#wyq{0X#IWt?z6WR-h7LN-kjdA+O7Vqm#-06E&OuX8i{E)9{`(Sm|Ng)83&mU5|&6_tGyAXvjiJ?e2U%4hxzx!Kp%$D*;LA!say- zU2uF^tLx7D92C18+hF><>%nDn)X9}^I`w-h^yZJ(=dUL3@;=^+Id7(dOZv-|qk_8d zk552JWYNfo5%M!KQS2U&5_B2sZ{?O{_k2yDOjGTJ@9jyQT9+XU*284aJV31x=(aji?Z)s#$Ew_9V)&~2W|EWv`FBCb=%LxG(J2T`I28cEY|nE!xhbe z34QzW^0W7zjU8(}(Sx&QvYtU%iS354Mccl|L}c#b@){p#TD{qdX_X+Y>i66te7CmB z>0GxX)pOLCl$}-LlHrfe@C@4@h+LUa**^AHH%CXhONH`22ks6_Y6dM^{E~KnMJ$@* zHvT7v&&|bhHIKF4;^}|qv56lrA>Vrqcyeuo7uG_Y6K8T}j`i&y6k5Kay1IDgRoZ+x zS6hpHimOn*CktT5;M29?()wszDNGP zpL7i}+P$y6d6DL!w)M4p2`~|6wa}@i$_mS+($}T;+NU^Ej-OUDjzn-D4>zZm505zK zDQE0TSK-*;kOu zfu*?cRZ6U*O6fK#w6L7oGH}SE15?k!A*x^Q_F`` zbn}!7sz02h(#iyK%4|)%3dmi6%>$z4_Kvf9!cy0j!P0Wn=8nA;6?Iej0XK^3QduF9 z;R*sP0lnXQ%PPRJnt2A;9A;XGPzESt$h^5u++xfR5Z1!j5G{;4kZI8r)@JS>M0|b! ztmXJb0JWk?kRUr2vj8gNKwa2bo7psQqeTjN8(R~e>gHxE;Z)3?8XQD>HOa2VKt5gQ}e>Ax5C622dCbf>=?go9B=g{Zx``sAZWH z%pfB~*ucHQ)*k==<|hTgyspnTqX!ivhlnFM7ms(KC zt*%+LI~F@##fg6TJk38aYbo-vqnO0L;6J7jox0-qpJ^B5Nlj;~i%Df2Mn$)ynNv2ZTY?;4Jpr~t4=cB%V@JMhxt?4Qh5o&mCagzR$Yogh zCWb7iM@9(ww|DJVsx=0dNi`Sa3M6uSA6xO4`%g`bjS$tAIl@8j_K{=3O$Ay3>g-_$ z5Ic9XrXN&ba!aztocH9*to)bR=2*n)!N^7CcA zv|AV%;d2PSvgIN6c5d(%d@BFL@#<0Y@R6ratC#0?;Afl;=TQkzocKC?igA@pi^C5p zKkE~egU9R5O|e~6npJXW{K!?iKo(nRRZ_uM1f- za&EinR7({g)4Cxb$ZadBBAuf}`GR9lsW7-Dx*p%;EUjKjf_p}#IyJ9m?TEVj=5*`= zyQNT$wW_c`P)^!peY3<`77{k|kA{bipU30rgkO=ZOUd%^wn@fC5si5U!DATNw7(TO zXFfMZsv>&i8P7sU_uwu%)$+VjQE5lbg#N_`(HW1WVcQB|D!VXfHIamrx)@$koOHd4 z94_^xX1=KRfQj5#^USy1HQPMr`tNC8ZV) zFIseXd-Hk{dge{4L8YWeKG{#!0P|Dt_hVNID#S#fhZO&o_G0c^>R$tI#)<-IdHgus z70s#1%jZ0>#NR#sR%T}ODrORv6Ri>*dHSA9k=Sh;5;X-)xRd)nC*zk+PIiHWBv-Hq-}Oy({F-xqJ4mac34zZ|$nt zAa}Y%F?QBJ>=CS}4szMjg*dEgSe!n;v<#^Uu2GICSEBcr#a52AYBE6f&|>a5yYc#N z9FnGf4T8i-nF3b|%y50WMalGubf81oajw1rz!zHi_ub%|`PvW!JJ{-A?9|oIF{93? zEV&;!O^*3%Z8hk+tJ(R06r`Wd3tA~d4ru1WT{cu=?->`kYcA18ZZpJVk^UA>+HKI? z3tpF0Oj!N;z@&ZbOwJ~nJv!+r?7?fM>2OH3P5h^(B_{Ed;El79>I}wZ3-ZW*>(ATaw6CTy(ZsfqlpJhRZV7`z@;i3 zsMZD7&2 z;7TFscw#_vZZAG^E!E&5HTNfvyv94Gsh(74s%~M*m`r&sq%apS3NW54uov1>tYlY~ z(oQv}Kno#nya#In=Ji$K@Ov<7!P2*CyfvAIL3*?`(m1aDs;8PRP|JCfh`^J1GG>Kq zpm?8siL!69{FxQxt2Ck-Z$3S)CXNB}LIRXOd&-Pe3B?}>c<1Z@8*aQdb9wVASMP6U zoxyHxHY^KHc4j5#It$?1u$R!TdsnE1YS$8$Y!w=i-imRFNyfNrm~3%cY|XscDSXMs zE}bOjSpA|=$pnFhVTU9GB(T82zF>CtAlo`5A{Yav7h~RwQ;@Go`e}T7scfot@kA3; zntjlMVV@&DR+@dUEEx85R6HM-IteSFu$@W8h--CAyuzcPxdUN?$L9NLEP70vmu`Kw zP5P)imN}n#17zSLFN)fx~^CY#$xqKM|n@PoEVk#=+b;YrW{ zsfxAes0*c?$`WyVFCVo zb(AsE%0l2TYwqf0@zc=L4{*yvIA2`<9ZWJ#Mg@Dn=~D0F%fr>ACu(8oEhL#ZGIZtV zfR+zRqwDR=3T(U=c;#JRZnKY1VG49kWyt{EQuMm;r-igUQ$uHj4$7G#1-qJSV2t*b)Mvi!0z(}Y579CC6RZ5Ujznp9Uk#QzrXJj03fRAv47m#d5>Jq* zhrEz0jv&XWtV#TvMN^;?dxGIh6l9zYJ#>yem!ibQP36bw1;hYwG=cJz&(~}q;6?V7 zRl&Q7FK6vNh+75IsQ3S9WYPXt{2z-{B|{;hi8nOi_)YE6#R#O` z)72q%?HutLaODei8wkE4d+O?dhpcA?0IoQJ^|_s4^D{Q3%_6=qZnLo2X{|)nPB0$& zIqH_j+9gX@!ygL49`v)Qu$=3foSCr>lrOEYwSG7pOyUKykN? zaeWR3^Qhhm+=jR)=hL=BQ73h9jiI5QFQl85L3LR4$D6`>-zzJ+kGK9*z<bwlHD+Q8Eo1dr57B1NC*X!wMAkGttZ>iIp<`!reUUWDW|2D&VAXI zHi0_eaWjT=$U@&^WfbrE;tuCo`kh!SwRme_3y%4hY$CphO2{aa1HZtEI5|R{J!L%; zpi&sr!Pw(;>Vk)O3cLTpIAE)ja2#JPa#DnI39`FkY3(!ck8%8c7`dfN@%qg?#s$Qd>s z)5AOuLaD}3$xn>wh#Q1|NL15|5atNTP!sk$9l_{|q+{8Rb@3qggQ3a9VH~2!nq7c; zlA|Xh+({eArG0GhK#@z+E9;KI9(+|$C$}!TA33IXb&xYYQkb;Ks~#m|355h z1GA`4j=c}eA_Opta=xWNCZx#yebeZvmvxGc`uNMb(ze*d=8o}cE+xpfef%397cx3a z+CrLe3|7h4n(FA7(bacW`Hnx1TYBlKON2=G6!*Pdx{t4>)2Ebw&XOW^nfq3{w<9To zDaGm=)zqp<=Q-pGB>}a)R@IvhvsmPAH#o@*w~lJ9_y=+ZN#`w?KQApu!l092NU7zl z04H#enKINtBBj;*Xq&m70WVcvYUVJv3?=zNudlb`#TZ;e_7AP(8!6Y|x#Q1abO*+I zIb1+CITt$jPh#nisv!o3eVi%Zlsm;+W1)W{Vba{YTIV$Z_twR1ur%4C7&K}jJBDBh z+X&1xd%>xu-EO;ExPK`Vw!j`(J?D%k!}up63G0;YD+5BelePsw42 ztUq)qhR2%$dDk_3{l&=VENrPRiSS|H9`A_|hm3Kb7Y>{*`}Ai~hwK3#Z!!TdHZg)g z=p-)r9cB!1_<}^k9pJ7Z3RkbnVBeAMz+)td7V;Z<35-tLQWR4`ny3zztpo2{if(>x z$X~v_P~9F1Tp1i?_c18UwzbSo)r|TSxj1cKIoPkJ&R4i49flC5U zLxAVGWy8*r+ZTs}(@^s++3F+OudkdWzZg2ABbr?4{+1y1G*5btZmSH-Fdms{Lq@mu z+0+51+%bsJr8kxT-1&ga=H0$hFxJt60SCsweXi0{7 z*X)~>X6cO%v*#9QIb@p`{@lA;IocO*CgR47za-P^-A=p>v^|fgF?=wYz81u3vE4d# z#A3$3UEsxMQv3qSnZ>H>NyZ%a{AYCnz{}I{|1M9_|G7M6+-7WV1<=-xzcl06nxx+n zN)O^)e;)Jn;^jDK#>l3PKK@9>LhOGH2F0A;^gQEs@c88CDg5xpF1;kz>0GdZFBp{G ze?W;|;jD>${{9ap8MhsFw=nIlcvwzEL)SgKfX+m8*aZrd)fXb>g%5^ZDEdKW16Hzz zUHCu#2HG*O5jSwEk6;nkrP>5eC(9*XvFt(mfJwATA!b5s(2X|0B{$fO{{uZ}h4DcD zq}s)?HhWSqc1VD_|A2S_<KfKh{03%au#yyHqUMU-IZK4A{W|)pS+Rj-|FS z9znP1F92Ch#>;11Fus?|!#M?d*1wo$;7B`N!}_3%9*Z4`{2}31)Q3Bo%ULUe!Y<0e ztqSx@$P)G8RU2k*BDz#s8aXNR^>jf;_e&crx)Z8(0}ca*922@Y+-HPUHXY8p*Jn56 z{L8FclN%27{YG10EZnkq*z9MICOcc!2;t5F�rz=;Zx+`4dFV9ce_(5f4~so5HAk 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 delta 159223 zcma&MWprK5jxB0tW@cuFn3pC~l%Q!0)EX4P z#Um()2afW~(I50cAZF0MVF?hv_pd@ukuK*GK2$4+Edwmid z+9(Y?1#edZ?(ir;UBE^vTj6Y#z&ZnRK)@&&;J_6jIIxCYzKR@?c_Pcf5RBd=? z{V+=egj|hq@a~~A&qI7?k_16iTp*@C<(x~NOCHOEFiU`lm9jOO622Q1rcJqCM7WLa zlN^_Zv|&pNW#en7ar=IPM^wU%HwsGuMvizLA=5l8p|SzRW6*0pK+WhiF9r%|PNPvr zJkNu>MCLn>p$WR>D!S5l`9MH5=Z8#H`-+EOkaONpb}H21}mg!5{aWX$BUS4((RQom{PzGBk%O|Psr&`7W;Yt9ODR5fMI!cm*`q7Q|6a|d*SRO6I0=btgTzF)0?Ffr~!7?FG7WI z?Bw;TxauyPgz$oUYn&jVYXn1ytCqUf$3hQ^k?%iZR`(xl2g2ZVkS1aDzU&tI8r_^|PeIGxN6= z0S*z$e(y%2kHRxRXIxC+5o9_z3okn`80!4DWNmVVR)F~Zg9A7KfA?E*0=p0@eoHQ( zCF138$=#%jga}H`{m(x6XM=G3vokpU*-@N-w~_$~@QQ#8SdAP4#>Ea~ML`F2V2x~% zUlG2#SWprO`7+dKf<4#kGsuWFFBDIW`1Eu*YdjxIoqs}q9pJ{{nDum)|7D`i^X_Qs(dQFB_xzKc z+tsBO`nNk9LC2FJ=AOha*dspyLNC6tjh7?NA~>w?OP@rr?%p@M@<;6e7e_7t$J=Q1 z@3d+^ulL@G9;Qu0(dlW>qer7VFGp(to2T${wHI%;$){d*x|_b;JrCb_^3yxp8Ijem z&dYyRdr6H8jqUf`KNvofzOQVpOTuHvt^ur~(9+0>nPfHO1r^@x)jEp+c^o1`Vze<5 zhzp+)HOR_9t*Q@V>45l03ibAWXZAHorm_<5srW!}Xw_Jk6^YpC#8k3(2~6a+x#Tc_ z$i!FPaU2 zRP*# z;g5s0ysuFcr=HH-dH!9Y1QFDGuj{S5(w0W!;06mZy@kxApG)1xysx+uq2Bw)=-B<9 z(fm9~LF@Bf6%5t_T(*rgU=*3CFW}d1pgmDSi#E{f~ zd`-+0J_W`cUg%x{pg^2_asro6(z$+SBzm-scFJM$J}uHr_Ru5hnnSRiXJ z%9iCYfH4-VNa(wzOvq-=1}++YXC0ldQa5>SNN1u*xftE_c6f3%geepii2HuZ$tkMp zGVR4?E|H^1d?qDdz?G_Rc^a8ZQKCLaFeFxVctR#AxlN)0n0|g&D#;TX3?9DaIyfiN z``LVJ^uq&PCVvV(ffkwJTCZKm;bQ$_eiDjjsM>7uVqW#7G=m@s@ltjOL5R{=tG=17 z^btIn0&kK@uj6gG&7s;3Ml9wNU7CD zsX9qMS9jlF0hrsuV=FGCQtwqWfl&;0k!2=!7~&Sg7YZjYjdWbq=+swc7>hb#-J#-> zOC7UUZ}KuLn4~Sm-;rdK)q`aPX=G#@VeIRR%{a)C8K;?J6DpLS z@`fUdIYF_joPp8RL2*0m@YNdMwK#F4G7eG?bYk#tMc)S}w49J;u*I*{l~iF)Csm+D zUs|HT1pI=V81G6ZN}-@dY;pKqwVA@rn6wlGL2-x5j>%3RS!SYPTS#1x;bUicBNlKz z6&f|ycMv-XYjZJ??TUr19t}#9CRpttCnBaN=a)o!RGk=C=O<&;{&=f?dbzU#3|L#5 z`H*CaxT3i}N=j@KQdPwgfyc*IpDPkW`dbhZfMUWtv9R& z(=W&Q_mZ0wdG=04f}B9S-L?Lz*$!%zLsXVN+>1ptzK~-HqUV*Bc{%&0esWc&in#|E z@|tUAA##`4OK;n73D0(BXM94NZQ9qZz4vx3)1q9KI3sR^?0~WDIFaa@H%8M9;B?Aj zOeqpQ{B;z@ONNUktF||X=AkL2oH8aNqbjPL>HTHqXwYr3|I@?W{%%l5njCmwCeg^f zJuS%nqH?Lls|aYDTgABYxn}YE38)vq&BbG6#i0gM1|^77)ub}Xq7fELi4+y}*>k^_J2+Ajvkg_h%P-54dG3)rjUi<7AYj&N~=_6t|?IwS(91b?FV0XXIB-`R-zn< zdiw{#cSNkN4`+ZQKLBaxk?NODh9A`qAEVMVb3!3Q3lqU}MpB5GHDy02-&l~xu&Si{ zLCwml2#ZDr8G=l*Dpxa0YYN2S@s01V*lQnEQ(_wyFua8-(W|0Nw zbhOZzkTLU56Aa{&uE)PBD! zV3Th`A=U(i|J%#`mqn65P_{n?fC8kO@c-${9hB$qpd+%qe@ye!0u{lKAbGe+c)0%< z1>^Z``}fca%7uSi2LcT!6@c>8d!SsvK0;EU3XK-je>viJ2jk)Wt8PJy4~+SQ3+$j{ z0AuIk3iRu+=q zZLITeeOy`vAR)sayLdo9MtWc`AsKLt5gC;Aw^1SF|1p9D0LJ?#74w5MfiWZ{4UOEFEC_Xp~8#ho~i~>My?;1@~aTWqn z@ggjfG9;O%pWK-6{+8*OR!ozGPkl@$VX8+ql$o15!JWRiDxtF9Rrj5#k}h|$ zsp9eGmy3o*RYcEs2kwN`)rea`qf(7;x_KMbBbb}d<}HGi?MeO?-wNOG%AFu6@{f1AFV#V5NOxti_Sk?4#k zJiF{?SV&=xPI6Q@;C-u>j7n9Yb7~;+)=a|vNeXAbwRrW}sUZm9W+$|O`W)C&^3c3A zNue;^7NRXR&nZ3XX=g1T=@)_h5=?X=_j*gFG6PN?k+uh88 zuUIn!qsJ(s*0SHXKZdeBwM29L1987~`Ml`zY+32mCVm@kC8KU0P>$;JxWZVE;eW;r zg=PNoan1>U@`et$@9`RMI=ooVA}uXG6oLMhUD3U93agmqDr+p7y{MK?h-~)#JU2sK zUMxB1M}?(8|6;Xd;T^>8Q_9My?6o-A{semaKw8^K(rt}|rg=Msg*R(5lL2haVKWKv zfRCSks0%oK>`!HJTfBJ0Q4bdcT@nLn|E<82%$Dj%mvb60Nc~K>7Zl$S=4*y!SftY~ zvb8r`D*5TtaWWPkWl*G2GKF>>YBKvsAhQ_X3@eKR*B1gAYZVwK?iKO?316HF1xCn` z9B)_GA$%qL=yim~wIcw=O6@xK61v({A<3~91Sk5FDod3sa7Xl+Ni-!q&bHiIGYDJL zL32}%GR6`hk`(}{=WV4<7^JHsrV?FMQ?t;veVzQizbJX;YqFt3Nzv0&w6^zyzjR{h zxE(4d{;+@ltQPB{iT!6!3i#l;mc|}R02R`-6{@B7;0;Y{Uj9|O!AuK+gE8Y~o>qf1uB|wPtj}bCvzbK|HtW+UC1nv?VY{W>%vMG{ z265eUmCbYCD)hWFSlr>(0g!(C*$`NIWVC`!f2xT)@+;^?90IIk-o%^cGYf zs@l4vvMK^gGnv<&CQ1P&)gv{|F9~6qgb@Wr2ZLwH88E7dwV^-v+k@J3XQ1$Z7%wB* zOPz!Q9>T?rAo@`i^mAdkbg^*yJ%+z$YXli6j_E+YRT;dIM^$14P;bxQHR4yPvC7?; zfWp#`v`CLxnQIHZKMQO;*Irq@nn{pV6W8+!uUz^IXXcUWRkLIdyY2(sM0&8aDSN!h zz;p{K&Wt&q-&AMv38fp&KXu`+2K(i<8w&UVinE!78ePDeMuj(S^mm^v)O$jG$)A>| zLl|tZrR%ouEuRDg3@BYsbQsBS>W=FOs;?(*uab!1>U7E3Xx#ENb+AJhl{Apt$4-pc zj!xE;I;bE?V^jP6CNF~JR+WUTz5y&(?vo=;n&W@Secs@PSt3OKY@8pmju^VJ*oGJd zco7fD^xP$(-*8nV@&O~?IJe1S_TFlRnk24UR7#wZXqjrk%GdP55umYf$sPH{_W^(; z^_z|-&!w3RW@k=`U5~If_!g$q(}U`{WUhO_V0nc#;SlB*?sOSoAP|r79Q=aLjgPZc zOaB!=vn`$^{#WtE7mIp#C*BGdB(29TKrsyBCXTlGirMlB^ceusjZ}_MNiUtv-lWFG ztk{O~5S%u+X?$k;?$hi~P@hkm^{2RPf_mA9VC>lANkr4iC@ES6v~XHMj^6Ij+TWvGltQ7!I+Y1ZN`eXkKi z{Pqa=IL^w>m_7|)Lo^E9$_xec_2HM7#L_~gUeXl1#|Lj~Smrs1C?pQAMS&qW%}wNs zYVBg8e*?WaL53n7`SToZ}bfbvW|~cz=yPGjdU~avL6&wW~`M z7miQ|-Kk@7^!Q-!p^7P0dvFP$x8bsqHYpC9R@@f$G6rYto+5Yj8OgIO0QWA?@-vbb z6kGE?$Q+TInto)>28hl*mtdt=hqmjIh^N{9G?cjn31iwPMWbYm$GFDph(?GA^Zj{8 z++VJj2(xf@)C;q0HUf(BRdcAFt0_5`tvqSJbNtyp4x#ZoB%XGJ{=;{? zx-5(qx(=`O{;>>(ppGD00Q9C7Tv-`hl86S3zuq`;Fkr(@#eDEdkQc>}AkN^F&bi4aP>-IcF?z}ofaki8p=ajc-$^mK z3v8|y2NIV8+E`kJELE}T%9NQPn3 z2@DCrsO!zE$#3stDK6hZ)($&87PwC~2+C?Q%n>l?fiS!j;$O`7D7TU`ZWs;G)^?Du z83&q?w)HqdnFh@OWtyF%bc-Y9ta1iImDl?M-7Q8jHpVC&C8OgsVWV&E?}Sgq4kI zS`wC(j13En!S>3V9w;isxadXV3UZv)Sx(*C5AC31i+DY>Cd{bYL!INtNKtT3OBXWk zCeMj7*~`&^Md{0qg3AG4g2oVUTtPDHA=&m2G=AxFow8+TO#;Dw%HX{l-aDL z?kW$a$X&~~Ms=eZqKeceb6sKvH=@NfoD{ypeW?Zlygo@H`tU4A*>TUJj=z`Le8=RY z*FaUQKEymInT6kVu&N1?MpZmDajA;1iL`TVoTnKlUig7#W30w>s04XRpv2Xv6ny)z zu5O@Z!!!|Tz0#vid6(@MZC{2){Y(pyYfFQnsN*lZ%dV!QF~7K49oDt#P|99-Z;sTF4hxpxeREzqo#0@0fQm)#W;?vRtIs zYAGft2%3$-qu$IILWyG?Bs!57i`SJHw9egE0!Z5rXQv5ZJ|>0^Zj8}5q*lSGrHt=4 zgU?vlIy)Eby@hEmw}#YYZgXT{qUINt?alw>k2?H9RzvD$o~#_4oD{B1Ki6Hc?IAz? z8Ga(hly8pdNg~$T6F#n^P^dLCE{g_YNjO)IEQ0X%OM zS_(O$=8~n_*D$Qh@VXe0Vl{R-wZugImeuP8D`ty2l%JSnI01N^a9$SDx&TMJR|! z7JDn>y{J)8dVbMkIEy-bUW`NMf?Tq|z3zfsS0f$hz zym%N(D0cX3YVKE}i>d$IVs2vx*@Ff&TQ%)qRy#vDWdonq7v5g&J8vF&A5Q3$#AQe? zUtcVT3mO9AI&qbaZEloymB{#X3mwTtsy>{oaFhj$%@ns(n?$?NF~B@zZN#T{5`Sme zggYk-Pto{=&xJS|)R{+EQ-`=Rj1Ks@Q$e3j$RnN%hsX^g?flI4B&ctWk@km?n>Awt83wN|aKXvN1G=I2A*uE$N6yhKZT#mh5&R}%1HZs!?c zeu8q$mvYnSj7Jw0_gjQrr2e{{EVy&Y2-Tw(NfPHl+9D|FO*mk0 z2olgnok{#3%u3x+!@=6r(afBLjfMB`?Sy}aO1S1NcMT zitO)Y1ZGJ`2RCtZS5p^jCpSkI5-zU4n1>b#8|!aKs#+Zn7^EW%TvJC(_oo6S1fFQr zV6yQ3#j*awA2%>49piVHYG7PEKmkO2Ad40P6w6;!5!kH31@zMD09I;}{GJ3V@LU@K z=%7uB@s|i@{*Q^U00p)1u=Gf{|Aj~Xcg)!tKGXiJ~^3I75dBACo1+6-j0@qRh~-NynXaZp<4f`(QKElTd;_SOyH zpUErW*y*E_lKZ$5F@IA_Kd#Y&(vxdw*X7{*Qa4`}Vc`B;*j~Xcp~dCMU6y}d%jb9J z(REgN@Jn9*>o*L*SHB%!!S@Ms62GLGX%1v@wQj$w)2+dS{g{}lbY{gZSzw|b7C^tF zWA> zEM{7xKZiih{N0X2EFzR_3-~>B6yO=ELvd7+G&s$IiP+6@XU&5emApWOhU!0Qih2#4 z=s`?BHty+>r=z;zKXZJB{y=x!G=g(}2A#Nk+wWTL_iSrb6?)kHDUG18sCfhYyfkUf z@)G@2n)>0dmMBl#h|tZ^g!0js{`91y*fY0mNqvPZPC7Wk65xupxBmEx0#LLSusy*b z6yvmimf5M~pH21ctNc@kn^znH+YOx4zZ@31M{7eO@$QxHFd#INYWIujU;Lzv~zS1i^YPnRbeBs;sHJLdc!FC76%jl^3 zNhoqiLuUNKi8n%Id)Aim`3?XuqiDMUW+)WX6xs}hBSe#Q;eOY=HSZ?Xdk=F!cQg8= zCyFYirKi%&a#hsJ_%Nd!U?PJ3H1u#|=LVR)nj#lnX0lH=l$Rm$e!u!01Bv=dNN(Q+ zM-U{l%czk9hX=~s&}mZYspm(s97B3Th|f=Vg!j7cf`f?|^u9K=SO$RhvwEs%)P_gM z@HdvY=*gu%(U=N3GKcIZbw=Ip``Ga`nDL|uyCImq+H zn($e|L|!-b5m!?#%NuZvN{HZS;5NY+1JZb?(pFdSu~CU;D=p1<6%DZvnHWHa*{TEI zqR4cpO84tJh6W3sUvJ02o?ch}6Ad<{gX#k?u46#eYV3}2ahI1xl<7|0r=dBr7_*D7 zkz^`9fQ6Wm{aBguZRJJ{-aWnYqRcQy@5nFDn2lwCWA=eluorNS2=#XJgOnPUcW|&j zin_NSlZUjWS9ksRqiUFP8&Oor0*h$aWA&+DPLvrYUb-ePZ%TyB%Hf?zf)OdV8jjxD^x@nC!eSV&92h60gEt%eUi@vPV4B+Vdsbb~$l z83o$VjuOLU3IfpVg^@>#r+pb+oQ3zcxs#1*NLCHOb1;)8g=!ja4OK>xDYlk*>q2jz z9x@3tqz&s{RfLYug-_>YhZ8VgKA|Bp7vAXlUT~*h)J>z1)LPHtzMrU!<&~MLoIttU zd-{Oz)U)g?FEKqFD@DtuDmCl+c)$oZa8 zMlm*76=VY@S=e9hDnm!eA2g(gb5WrVHuwhBf8&Wo=@%9x!!H{HH#Z%|EWvX;#RTO~-?;NAQTKdbetMekbeBrrrnOO5Hm6uE5Z?%CL?&PS)9cZ@H z3Z%KIF(J?iZV_9?eG!c4nHJ zjpfsAt_wUD7)C2BWvpkX(N==rjntyk2k_G zuOpR4<)O>WY9szmmk;$>f|)gqf?7>4mF^6sCzal6vDPN7n?F2MuEog;b4NXBmD*b% zaSWi+BGy^uG1vhi%>Q#+lu}~i4yGZw9uEww*vMA>?pyre`+aYmj980tuhBJBwt7V>4g%oqi&`B2I6lv@_3$m11J zD{_MjGvDCp*_5~-&6#DQO)9TaCKfSsXK0-kOaP?ov~h~qkucZFCwpT0Vtss~nJ@rc z@x`Ka?y17A@0c@*dlbTBz?>eW8j__xlpPua0gpWi4Cp*Vs9-xqN=R^+^1N1RK;1S= zs@^`Hj+|`@bF$H|8i^)OO!`ry4qiny^Sv3vnn3s2A2iJAl`#Zi9PWz(+w(NaE}8bQ zUwK;N(nb~;KIdJ)r`O;ZWBJNhk-q?<5w&XUYSYd*vmqEx7*`SZO*s>TQa`i0%&4MP zD&(6cNw9*Pt9-v%!a#+dfPCSiQ(p3COsZnHOIrltf;)8zum`~#r`uXK;2j)*pS=&u zz9Uq&7l62>NOd^nfj_h~#94!yiq=W1EHAZ}M<#qSIaJlLf)cgf8`>|JADsYHhn#D! z(U;ithE0qs?m||?UAA>DIOt+t<84i85Sp6*HM@(Hm%<=&^{ZbA6|@qMAA|< z7zMmIsm#8JJuQPmg@DCV`R0qF1pCPiJ5RhKG&e(fhego>)BY4cR~VbSo1S?ohgkS6 zW$H+`#Suf>!)$akI}x01BJb@{Hg-298Fl4jVl6FI(EWT~*cDU`*=7ou+Z+A+v@cr!Xv~e z?%%cOi%Dm97U-wAJ9UOqK3&wP)!w=jS2)G%Q%4WZP1a2y{ocQ`4OX}SHAb6(W`{>& zw$LFw!i>g;64ox&)K%|?o3f7B)yi2IKoQ?#RU|_nJ3}(b_4Qt{txkPVS-twcU@A7P z2j8w6-SlzeQ+6=`j}mKGJ)8SML2i*G?%ulD(CB$f%PP+-2%&MZn!%|s`^ZI&XMBI| zaLsFLj`8K2^FkjX*?Z1*nfsNv9_t)ff>obcO)JPHp#~$lZI#fq$LXznKg}V{L=rKlg&$VhY%C>b~ z7^4co(M@v=g+3SMDd;n?gjaRR6qRJIRL@U>H0QH#6fYbc$p^16VXJi7%I~;+dTEF}HFoZ4;e74Jo z@Gk!K#g!8Qa05g0R1UsES~v(#PET5*MZk6q=f|o3Iexq>f_{x-(;&7wobp837e#$l zN{gbSata@z4jyRr-iW-R@8c0{?`#DOo;8VY&%&#UpVBMzdlvB>3yB)F!t`@4PcS|z zX^4|ZXQVdZrxb4{L6Ky6`B?zJ4MZ;kZw?UMc zQIO!CL9C9zs?<#nt}=6vz$8~UG)njC0uS4CwLV^1Bi6;!_ERWei;)GF)|kYOsnM~j zSs@A57*xKy@TEETP27aJ97yEI-}s`}+szmwX7?%EZj;x^n#SICJ_L00S{-?_nh=E+ zk&8SBfS@GbrsO4aA0?&~nWmQy)5RG^!?3$6H&lT=tEj%>PVgbsRR%EU zpBTFyFT<=*7sj1ttfY)9@m2R&7@CzFxmY!-8PLWyz3$=QYUlOWzdGQA<>v2T_XK&hTn#YwARWkzTW(s0UF=#C3 z_N&GSz*d}BWRO!ennc=g_?`Xg^DduL0rzf4I2uz9CbJ~$WiM(4)|FKrtZoO{r3m-a zixw-4Qyb0%aYq=LieiGZU{?fBXCNEVBOuY39W~gM^TW5pj14n6lAAnNq5K75F|Fw! zgFoY~2C2ogBRdHU#DnVN6n~*fNi)Nj!k%fs%Ti*dhKSAyyj`^xKoD?YW5qD%2Be1PPxgy!QASYhIJDX^q&MLMe}=kdVCgr?Yi zT`BqiD;p8~1#fA*QgGtM>D$aV?0pNJr?xD7`i|dh$%6Qlx}g09mk-UsN0P4 zY$?fpcteoIpt>aty*yMViwMdn1t_Uv-K<;#hxyICeK8>S2MgR$9ns5w9%(rEbO$zn z>4~_lUU$c~?#P|-vvSi-4}8Q+gzq6N^d0y?mN~PtZqr@ddseB`ndo-uIM0oBW8{t; zq~V%w^}@{Ig$J=HH1tq@^KDWvR}mw-`}|U9h@lUIDH!9&?!X1JZWdfc6@VG9kv}AK z0H@{x7_odQ8S!ic&`VBu`FuqcWk$-8F$19l{(px;R@GdN#i4itVsl2J0Os z@EE1$z0xmxU@j-YuQ=>B;7jEuYmuv=uK9*@a>-Fai_@;lJmk~LitOld>+0yup0y}J zs!Xcr5kXq2sL-n|R0PN*7odG>r58EqYA@>G4J3QYAAbJ0v4mM-$J>W2@0g~X2EmCV zSVHheh-&rvH%nzd5l0tupFKU-*F@hgdROMmqe#B;U_e#ZH|m426to-+?v2~^-o;X8 z59U(q9s-a(bV#HWnCQIc#?`EEU#V5Ol}dKpL+(TbErh&Cqxhtm zRc!b+9o;34TJebW*ls=Vp|b^Pj|Q5fkI!)P!>AEL&F&s6x2hhZ`{&tiU5_q8_;1;) z@gJh(L}}x{HlUm+b)U{=@vg|!;HOK}vqaC<+U=NCe1CM!B%GevbRa!!rvCmg_d`;; z4T(3l|7nl~o>LC|HW6_A#=o~mc-i&h2$2c6?`ugog^!^LKLE8^kc4~BJTPwME zgZV`fv^Gy>8zYS=OL`K?Oju+!0XM(kGkiBBbK>7=^!&GR&rA>`O0b2gJOUNP<1NAKX$glCc8H zc5jy$(tCQBX=3+ji@v$kl8qP=Gd|(`{at2ZX&cQaL)iXXCFC;CTRnIlKUCsr=dBlG z_IDzdbK7JKW>+;+W@6@=IFFHo%NP^J%WZCp_Md9PFOLA-#^c8pPp;F=`1AERgXz*$ zG|o!zPNTqpPwqCS(u_jy^5l)MQl9&iS=|TmNptT(bahD3-a=e#wubD8`FQUUK}iZN z7mm@jTVWnv^8Guk*_oX69kr5tVD)L0;hxNA`EzhBs5NWau}p&gk`eP*hK#<&%#Ef- zH?{1?T8jWy0k{LaR@Sk;Ow?4oy8u^GsuJDgyK?###9swrc0%$)@Ktp%cUj-A87J--X_J>^$b@5 zt=`*5FM)0D9}pFcn=_r14wMqW%E9vYrr3Xjd@b4vj_W)q-T0S)i~*uzvNVb4WQGEo z#Dv!MA*k#+vWNm`T?-R?6TZ}=DIdVwcLa03C~~uG^N`^dnq>BygR3c)fwwiy<<92I z_cy04T?54_h}v*ycw6iy$AOr|Zrr@1Y@1s9mJHjgpo^M~5tCW#EFCZ~eni4f(%KFZLo?cKJ33-TOQ`rM1`IOo8SU9dSMgx zMaJzm;HSwAQ|rVhg}tQ12C}@K)vM)Rg|{nxjAWaiYDEJeZ3@MqF=(g7Bf+fEI(O_AZ#3(=%@3HsvNOmQA4;Q|ABXBUY&{EX~mE@Ro#HG9tCOb%6>;5OE; z(h;Jq2XbtKd|L|2*Pzo1SVwE;SA9ET;@|P}{G>yEDEoy)6GDsa0bH?LnimPmRI30x zNj$c#2i_D-giaHXA{@>{K217iKPcQ*zSbIWt({|j?^n4TVeLO?3ewOD8EMm}F7XiQ|gZHFAp9S?xx2CYsYB-lbx3dKxTO>6{ ztq*HUnBntPwo*PB?`v$7)TKt6r1lFRLL9AVeEU9sxD3f61a3mQv_MMK@E4e3wvw2G z7$y~8Ml}bGZEE!#3UVqzsXojfP@d0=rh^t@VZa`FUUb0)cy2V&#$suvmYNbdH_;s+RLIP)L^Od zV)>(QkBx+Ml!JP^j+ol**N}_ zNovtQbzL7u{iwx#Lw+bE9*u?Axs*JeMW9@-;B!8sIWa4B77QezDJmqv0}*2f_JSp@@|nOrjK{BkxqHHmIMg53`Ndm{%_8Ki`t=58+W$jsk_Zn6C@@ne{{H;_`YU~P zW1c@p;5&23>NL0O`S$>e8>7`Xq3_e1y%<7y`ENqa0HC3_S4-J?`vLSo2C70*<7f)4RO^ z6Dx~S0QG@~whKe{_K|YMnjuC-F>1wF*JN#bVe>|)pLBWNH*&=H z9FO&pcQYkn*$O3o;_GS+*} z0@NrM$E*=$8lv%nI6$!xW}}zHPbi@0vIK<2{~-D#sS=ETqu~|{-D^I-b2+nuFI|7K z3ZZC{GfIuYgun0vdeq-`mh-|+X&0ot5W$O#@lNK|mL1G_W2R{r;}>u|wT9M$(`8WmH1eXB`gAnzVz*iR~!~gZk!KxlrxIz9ywEU zRwMloT!vruN3wYX)8xD*bc`)}z+W&%rcgVM8f2e|BNpCz_9NL~#`pO~by2V?0MJ1E zro*&TW8XKU7HPq`zF7Y82}x}6{P=bTd!3tyBR$<(bj~LbZf2Rl8Z^Dmb+_>u)Qyn8 zTN`W=>5xpQqTi7N(nJy_BS>ZCONJT~)LD`K+z@>IYC>NJVFRvxgHWIpNd<=77x)@c z5hsNt+>5Ix_^2FA+o-3XuUw}^wSXN$SkKT>ybGs{tb?^={8hn1eEn7=Y4rvBd-T^M zf-vHgb&`k7JX+KRd{)0!u`*v+z-Kw9GM|7u4~SP`b*dl0Sbk}j2ECmjJxgwFDS)nb z%Z?AKU<>$_y_^E+nznOw_Y}!g-n{9t}68 zAH>><0&Cs_h8ipXrcMan4F;{18r|3p0 zLK|%7AWA&Z@s?(OOCLaqVqEXvB*nVwz=``AoBG;YGW}<;2noJ6VtLAs(1NW!aZg1g zJ{NPjdtX`v^@JpZoqKqlRzIbk=39t9?pT>vO+r(mu_;XXCytS%-XDG_Y|#AQ;jg`3 zysK2UQNgVYpG_Bjm?2iCFZVQ=@L&)-!V4}RQ?Hp!^4^x(!>Ix^s%OM`;{5|&3J2n( zvtUiD-|pcrXGQQ@ut9; zdx{eKqSzC^_C|AqaA={hdLA`sXhmwZt{rL`c?(<_EC(|vi6o%W#lm|f`boql$~D7O zq4Nm>)yTguc+qP}nPA4b-zt6?l`&?IzQ5Q98)mU@Q=Xv?1d3icbTN4kTGrWWL zhFY0Y3Agnq1Cg@W&$>byD(3F2w4m=rx}|bQNsKbveZ0M^usDqZ@RVu;hX*8gOSFda zJ3ck&NL*Z zsDN5uXkHkhw9;0ggld{G1IggjW|bmk%nMCeGXJP@x}oe0QZwNL%U4oLO0N;nPa`rA zy_$x;{bpc`o=aht3+{$xqAic$M8nb-f!tW*E zg5*PThBw+F#ls7w1A~#=f)_%2?}}@^J-@RI1EY8o4fvklrIS5}u*~Dp`B@qvTDq*Q z!eRP6sA&wKL`uS;Dkqd{VJ36gn?_UnSOlY_FsIAJt7;A?gCN0#KU5f$Q71ZX8T}lq*2EgIH4NSjVuBG4Pm)d?}uX39L#42?9Izs|DZ z0xoIGaklvsA8ND8pR*Kep-m5WevHBE)bPMVW#r1!& z)yNuZFSHqA$afOH#$MnqGst!F8w1P7wnfaqg3&Jq(I0o*%V`$Xe(ytM3sC<=^kY>f z9ByPJZ4ab0t12KC~wsociBU0B7S2$VCx_ZO3(T(9b5~@z=B50%ErP_YWbSVg<56JIx_r*^XKoK)aG6Novqb8?eB+UpxR9}}DM=9>|7fHg* zVwpo;XxHCIQ<7O1kdT(Y zwL8zlWvE;EK`v&;&NN@AhAoheb+cQLyiG_H(nm(}P3WkC7h;Jd=yt)Q3?Nqe@KC1>Qo-_CW>*0NoO^T++^; ziH%9G4Xv3eMHbt*oZefjj*5bWFsIsD{T(*jvsvj%P`f}uYNYdm*f2+gj$;n6H(GYy zK>ruFal|YX$d<9mAh#eL;ON6ggA$0fS4N@$DItM*Beo06_m8PZj%e^{tPYh~>9*>W zN1XVDn_{^;q5s4KYXj92zzCj&PrH?G#%nSO%o|f?vb+Zz98=d%f?oX#ADZ_#*e{$d zCVupJ0dKqe)B^p`7+DN84b0$q##9U4wZmLeDc45{WZ6Q~jm1#dK$yiE`?Sfahw}FaI!w1)WNKIXh!h3&sHrTP@AD7mtcb07vyZ+ z+Xhf|YV|vJf@aZIB#49Dz}g=QZ%0?+`I5Xb`NA`i45(*$8QN0v=2kz=odFo+K ziUJM*#&)}lk~KVxOG?iEA+g$I?}$w{XHb=xY){d}QZ7x{?7XT4LD7y1PQ1&U98lRV zo178B=fB*9fHbwpP30{@aOuM`rYrFYK!KgRi`C?|8rS0hmsWb!nQ7_(X+rA{75ll} zkLtLo#?U1}i%OKJ;c@3|qbyRTsnsCg@FR}sqz7~_Ws;0BNOPT3wAaIfS%!mM08 z1ggm7CWpp;$uYO=Anw(zmFHLs-_e zHI07|Ik_uM-u}DXc{?mD_4WCiIR0uMkbBe%f?vHmXr2G*SwzKo4+Rc9u{)s-Uoi80}CrWFh4^7JS>S$=${{N>nwsoP`{ zK;T}Y<~6=Bd*jtr36yLJ(P zj%=7&6KxyMaO&a#bZl*NzRrz2wNsamiRpFrpaBR7+hU`>Ws4~Fko$JHp2XDg2z}p_ zD`Vpru4Ch-1!Rbe4j}gJ+F8wfW>Zp~KsAW)O6a5BYv=D&x+ zDrAYL1qyHh2Ks(pjGH}Yx&&G^NfKc`v~IsB@3r7!<37Xef_-|mZ_&CC?N_&j-*DML z-y5hNY<9X}a+DwLm8Bo8WHFnkZGQ5UcaizOS^G(>&`y z_>lexDep~y#P2Kr1-ht9E};DEq#uUvX1)8PM3rB!x%m@Yjt*tq@E8}zu zZe7Oc>!%bK=+k+pp%I^C-8|kjU`9ns%bh#Y$qUe1q)6$_eqgWE zsox0f%t&mLkbUK$DAyOI+ns291@qiKqLiElXxl#@;Y&+W@OzT#n|cc$XULCO67=fZ z*#hUH+>F|@O6ry&;>OnF&WZwe=OZ+qu)o$0AMyG@-@AgrNbB(hWF@HBK#^a|WSlbj ze`M_n>_eY6llX`okELK1;;H;vOV%EM=$+@^iPqKyEw(p&7d{>2-!rUC&_&Y|o!o;4 zoG;(Hk!v0ZH~rI+^CJ>NsI_37iSnJSLs+1mgB_z}8Kg=9>05J#aSI-h*T_Fc64At8 z!wQ~$W{VtNOspT>)l!jq-^6dYQGP0Sf0f<9}+eByeA4_O$`7Yg_% z4*k@e7jBl5{RjqIjp7Ox<(HUX1iF0*0D0E7!8BzZUP8BaA}nNn2kxhb^9S8F!qSlW zz1+Ho0`FIbUF?hHcbz*dy+Z9~l^2JUm}YYz6ZJd+b-71SyYb@0>98*_jDtl_gS2%H zEUrAD{j8dlF`gN{uM7Fa6x?70@V9S&6*mKI7(N0M z-l^C1863XzxpGJAQ%h_j#4$;Mol;u=cz?q-(D!NYUb>a1>2A^9qgo4-j)YnmNJY;x zZ`MLn9Y@tveHHo>Bn}oY48!FW4?UW$&xq#EEfgRx1rJJz&-d~~Ls_GgI@`Vda5Cvn z=E0YYxqd^HT|~Bgp*so8N%0e09#LG~c{Vm35a-pJj!o)+$f%NhgFI-i^M&%N71Z8Q zI5yq#A`&S2XWMuHnNs%-4r7$GlQ!m37JU)tgBp1>Oyr*wyZ0DLssJz_=c$)5_QO%JR zE!-Lo#_&luQY<`aCi_z<5B@$p>0SOXTq$fZbRy_57*6a{idoHIsi3Zh2K(zc4(oSVU>%LE zo2alAbDopvNRlW^uX6w_V0sSO8b*u20?H;{9@bDzf!Y|0$eRDx1U0EZ8Pselm9|Ic zVWkh}hf=^mH|XdpwAoF#d`h1EN<%(KqkL$5cx}k7>K@!;*XVV&gb##9^avTXN1@oz z+nU1mvUO6-$htCr<-R z$PCgEP40tvbfU1JRI`C-K&(o1U?(|NwrWV33i&mot=vBlTC+k>@*F$WgnD&Is2P}< zz1lX3)UrB?XWqygz>9bQmT0Hk1Wy>-j%F(xxkJP@kX|5}Q@)?LjGmulV+BD%S-I_P zYs{1^`X8PzBwsX;@GsIbczCr8rsj=@)hTtU!tZ6^*ask$ifJjUo*Nzrp8+syny-c` z+<>pMm~M2qqthhLuzKQ5`hZ|MS0NC_qo4m;PZU(BEfG{Lz;mX`7t!7Eb9KbrFS&gC z>#JmQ^LvP`B=UXf1)jgUFq3QV;*XcKLtY3NovXHkLEzPsA2X&0v%2$r$}tK-KJ?i! zl6*%tSG*w58Bm^XO!oWs0UD!#U9a@2K2Te?RbxB1q*2Fwm9ZGVk2P}!q!G;>QbpX6 z332U`f)q17z$q}0qypCWP9!@?r;-YtCHGp*)`j219~ZT^C^U|m{Q-6|u!BhNnd$iWJK&F`ULWH}MA zhHyWFb6#OCm&CLzuKJTfKNQ}8?`Tx-=j>OasTPNQ0I-PrL%zvV8vE0sMlwWR(z5Q> zmvMn5m7QBvFmD|e&t6aYdifEa&zxTQy?37d@?c|rDwtuOx=URFtODv7Ix2>!O?gk((Vt0nc1>lrds|!-{)Rb3-cTQsirva%UwP zU}kRbLTZbu(6+p*wb(c`&`H61SbP_<pLPHvTeBi{_;+?Bb21pewsG zgwG$DnsK-Rv=Y&Bh{)8Er8FOuQ;C z|9A2F_X55ox$efzxyYdp6%x+5LXb~Soe#-42kSlqh7n|wK$Pu!aOP^72iTilkB#iT zC96Vb0+Y;Y*^!&BWZG?5@s?i@3F0(6e#K)`sSU&^d^vpyh$6b{Qx3O4Q;S_*WwO=Gb%sd;=p754Gw{~U}M|CwJU2zEXmLcNpusCQ`O*ya>U?Uw@==vmoKjU}EgV)Dz(MpE_ zi-TP_N)@0ILV4!}$zApA0d^1ktA!^=;-JC3zY*x$` z2%Ejo`@{iV$(KdXiTsGUk9n6C`mzETf2qOeEp0v^4Y*AUw1=i0A=j}j5g^9N= z6KF8xu7MV*v^ea0<|D{;ux$zbHiP_9JwZ9Pn^$r&_|A@b*;he&fV)6GF=1&#K(tbD zZ}u`u_S6m1eL7IR&_3_V#Hm~(_jMqzK|39v_#z^sR0WmaWhAtrF{&MysupEyf_6bjKR1{!M}KQWuHrfR0USb&q+p{@GQ~8;@uOlSSC`!h{IZ| zUM9S0PEWN>&I=j~@CMaeF35`pp*%-CUi>(C;*bp79KD02?s>&c@A>G+KS8)DiCrOl z{$NApc|%<6x>h>xS?tl-gVD2eG|T=_{=x>Cfv4(S8Tf2(2X;d5-rLu{v2$+jlO^Zq zhES-)nagU(!8)iJY|b+bNR}U4R+t_tkpJ+Mb4QGfr1^aa$oxt?pDFt4BQ9d6>#8oj z%xpQ~mEIZ6;7);aH9pRG)EjB6T*TLk{g*r%?R<4-zt}Y|EoHG9*WA_CHQ)w56--`x zd$9_Kn!A6`SJDc3A)hRAUf8(Taej+#_IIY~2FQl5k|_@c zk)cLD>g(q_D{HcCNwb@Gz3rS1=a0SRczx-hm+6#>8QSH^iiewo>CA5ifMe7guEYQ! z+_c#6f5r=@PHZMu9NpSI7y)jVHkQUuz1U3BG*O>d-n4r`Ka(Qj!RZ1FQ$i}2Pb_i) zCKC@06CV!^d%AtWyTXAF=U!{BmE==Vg?+R68DJ#E=7T-U6JqW$7-4HEHYCxQg;B%xWbkFb% zpFY;1$$_Ln75@ES6oN2cJ}xwkNdFOO!aPJO-7lzm>om54^oho}VkapogjNR#l9=%M z^uGMM-W{nr91Jz!a8%IbzZ}d_d(266`F|R6pL30!YCqs;DC*^|AbbmZF5kC;>-Heo z2HcY}X)!)?o6%X2UjVDAFeo`>7!U;eG<+(^pW|et%&|M$C`w75*N8%0{}zKXXF+4q za;n$j`<`%i=s3{RL44W#_ETs9L|x>Yd+C~2$JE^YOh+GfS32#@(%?20@3tzWH7 zp?$|0=qv&=%7xUM8X0+Ab_p}=d}$$!B8)X!z!ZoWh|s{$Dy(c*C?$JL`+iWu#*7nQ zpgWV`pmKfzCxD5}7x&xjBlVzwjFgG|``^i8?d^_O^6guyiD7#Qn+@=@;(uY+JA$tt zBKu!3v@_>6aKJ~Z^0PpItOp3jqB$>tF==SgmiJO4;w_X3Z$Q(6Q3%X^gQaAigN2ey zPcj}&bvSHhV`+AH4oOq+Oe_!y5t>NkmUf6T6&-_C^Z^K(J@b3nBzPf_l3gfH!`Hy7 z7o0e3W1Sq9>@!7wSe>w(?@8Io^!`Q^F_P47;kB9~daCA=Br$WGmROlz==GY~u&sm8 zFIz^g3ighhhPK^FgY!7R2OW-b#>Z{yk~*%D!w~I?+KcqnYK8t5_~oPxW$i13w5p-G=3L1=sqiv+7YY1au>^hrPkrL>S}f+*P|+poQr`PeJU?VtI!CBT#WbeBwI~Nfyo=XjYo$I9 zZ}=}N@NUL+HrwXDR^{KyWv*#LXl^@4e&6@S+yXgZuk3)@?l*ezD*Q` zmP^FcvR#3ayn*qh6L{Lj7hM?GKyWL@Jyo_KxlL-5S@po8U&E8GF&7((t&OpsRso+QGQ;7m#cvukRU{c~;0ne!K^|e+c1XvPJey8)+ zpi0PsG5YhpF5bd^D3F#*QJO@1NzjND7cwDBv{VP+P7riZ^Ix#RG7==sJIDjTCRFs} z!dT%hCN)rI9L-A2rw1i;wX7X^VW%ZYTd{yu@?qg*ISFdJtl9y`gL>ww%59g=RrEdd zST#)zxb&awZn4|ms9%ytf=0O;#vBB+Qh6+4*fsx=bT0O11-*bYyc6rvFF1vuR2k1l zMFTkB%Q)E;vEbi>_7SS^<_o^1FMThDK1rU&Y{q7y3CwDwiu3w&Sr&o`0g>kO0UzO&4zWOk zWAp`BHN?$Fni4#eM9`(wu^D~05NT_;aa9KF^2oKt)yEE@rP?*w5by~=o$sd7eTL{% z5{{HIxO@{J1YE2dO=$65nb$pN;GSO)VOlWDR~HfCn$+U@==Cf%w{dEk zm{2ny5IuaaY&5+6&HL_UYct;vKCQK2zzbOb?8EtGjiMfP8> zw2!yLm!g!E`?d(w*wCEDC&arM|22sG15;5am#zP`PNwB~`!u{43cxJ0Sl8u9;zkEI zIbJDMLz%XK8gnZFqKU$`zdg@~toaR!!G6}hh@cs}r}qFetQc!35_S$$81OJd4*6#{ z?|iTKk`JiAEKL*}MgbihpZc*`m=e{}p%}hii{2YFOK(HGxg#e^0+<DaDlu z&{0U;E}P|oB5oB3I5D8c5gmv;BWE->-!<~i(yR|ug?2WL*}M}HI?kV4QWq!z4Llqk{ZY<8Hes|F_$;p`%uSEs3mz62QvA@_)K3n*P5$Kam={e^(+U zO??sF#vPwG(S#TG=sz^y%m6}&cD!asz+C7Si&|NtOpB}!xV_|u<|7gyRutn|c#>{+ z^Am8$rz%D!yk5PU&ap+U-HdR?P3*t^axdtI>1^z#Ft{(PiZ0zzvSAmA$%o z?D8;trO7C^k_7fRo=22(@x6Wqr4tflZQ>E&8A|<^<(vC>5dANfzcXpH6}M8?TC?|4 z2P!~*z7Q7%+4EG5@voNiq6gY5SMh!R$`|9`&d^j3BI0zw;7l0gcQEEzn?h$F0JiQg z6=H?o>;xtG=kIr`no-oCEE+>$gAC^D$AC^BVc1n6p-x1b@!D00tfJ#A; z5g{%Ta3N(QQi$${0_9;zbXP+d1w(+$`M+w3vMds?PN>M zsISa;0m6uScYy_)5?^RVFv_4!B4bB=wb3#6PNn15-FylILO?H+v7-R;5nOKb zVhg5Fh>s|<{jG*$kl{}6l3^TJH~!b6qSs1V?^6PmzfTe`#**$BuMFtOR*Jjw300o$ zm<0IdBGu&n1`MAL^Gw3qI`XJ95J;le68E(!1f`IQ3AE=2ncD8h`o3Q$l@p)Ux?)#5 zXtDJnA$aV`f*j$MGT^0aR@wyBHEQFrYw%7LHLpBiQZ zjg{IaKtM6nXF?QSvjq>Qo}p zFL{C)vt+h39 z)z2&ogk>gWMz+>b&o+fTl zbc&!B034ffA*=2Si0uXqBF}-T`6C?FOzLY?KFC%!lVFp>c}DH<8D-R7Vf=Wda!}_6Hy`mcf393XPpiTn`EDSMZ(Kv`QdYS^02y zpzhl=T0rv+Kk5C+LMR;Bk!BR8sg7oVXyt2n032C$c9Xk8s#Ft3tt_;BCZn}nlm6;N zOTC35Qy?s8v1$JECDe{jko1#H=@=}M9?!hm1imrjvTa*h`FD$FW!1*SJ0L7q5icy* zxw@;V8oXt9i&sDUO7RY{J=_85Z(>a1Fta9PC%vx8dBEb!?IQhm4|{A2F)4t*mPl0w z1MqA;(-1q|aB|u&#CP7^d(?;hwVq+y>&j5u;Xlv%+3?1flm;x_V0SC8K zJ7g;WwGe`bG?ADRCfcISO_d|x^hS`;2>?dwnvG1b_gN}Gz{2p44T)7<1H#Z~cMz4V zS6iNN;*H-DuP`vqAs;O0_pcqM$X!!1Yf`nOZ8z*6Y zWCD^$@J+hJAl~Gd6BU$@8ucs<&lZfs!hWpSH&63bSnOsDU>#W5x9Sts+0jYBvU*WX znMWAn2M$WmH>uyq?on!ouvb8?QWQ&&r>^p4w>m^Z8xjXt=i$=m;gG+T0?NtDpOKfi zq+Oje&pc`B!0h8kolBR#GfS6(YAv~vh@P^f)RTxQLrS;=UeT3`sESf|u9s-{@9^=K z$BrOhz5j{GuZ^T6Cy*wkIlG4B+2|?7c`00#U^bV(ut45UJs3=HI*;Id{`>Wm#kTHU zsqEjSc|13QVRtIA8VO%$0&u(_arWT;p5_+RP_0u~=Rh%_8N`PuQbeD?WO>bk67_!5 z^Y8O%;d?-EfqneKQT?kxUYyBPH(?bujRn<{4@#lvJ;LsK?r!Q?X5__LpfX!da`P$A zEgUSc=tq>UVb%a5o2(aGG7F71bSC-t9(L2yaQW~K>U3lim*m`K06_T2X~=$II&H!x zqe{sRjR@<$8(33qe<_*P`;zUk@-ypbCHSumx8}cU^=XHejhlC?0QmAL>qB0>LPT#d zb76TKX2ZXaAqedE{FHKAqb=>4+T?p{5nOMr!*-@rHbv8rA@R;(^)hAvy9&U6XQsDf9dQ; zg*+0WC>zVwmUS}_7cV<{PD)UqlmbcPUG;bJ2W>M|Y zpjetNqf50U2|$-2Ach*9n&qDGr?nOYl`S;X(1jl@)PAX7+vZD4GX5%}Ib)r-eq$$Z zRaoe-9{DG8KbZ(aljF~^4<4zs@uh%Xed`Q<>fjgm9IQ{wP|g;( z7Xp~=0sunYdM&xRExKXOuD;hXpnSo?$n#VQ+Nw<5|GNl_9*wUsLJ7O^+3sJjZv?ZE zMeu%HGgg02zX@Bs-L6+GjqJQfdt0L3vZ)?F^KE4T?zGv7C_0apMQwrKyi&*AExJos>Y{IbV3u1 zq=A)E6)QFjfwh>U^b-8s9DSSm-#RCAL&q+(DB94u&1)(5%!G!dz29bf(vuD=OZ@GY zJeWV}^P$V~$+g@IG27;6@04E;dYwptf9%&0zK!+4+wdZX4lN7oD~-}bSx4b zcmSPdUm5R|znp5$Vb#M{=_=Oo{>U>`v0lb`gL|J-mh&4K+M6&1Z9U#c(vX9j?U_)W zkBLm!%jg$&xXOw`rz9xrT2|NME>+SzLV7bp9c z6=))g{tl=}Q-iJau>N2k+V?+!8N3wkP5?58ZAgWcW4uNT^K=uAHu}jb6iB~Qs-n9W z435m6UM-YAuLY@pSDL}-6Xl_=aYxsq^Q=w>>mp{Inc3xH6 zI_>TlpEAlAyOkE^ob*?MYyY_Pk@2|~Tg=l0{&JTx=7V5_+J4Kx*?$w`>vAeM9|jO- z`z7YfR>Gff8|(U{H{+Yva)H^REg6yy-I?x#b=bjtsMBWkXlSkFh&Xl(2`v|!frQLT zjY>v%zn%zssQtRng^BP9{{2l-9r}94KLGO{BdWg0&QP7EZE)MU9|K_vr1u)$v!`F~ zqafY=zJ~CPQziz*R02X+PNJE0O9|jlpHIC?7tchEoygx73Hg2BRr#)W_I+?iXxgI~ zE$LO=b236{{mB$-*&RDVVD*k5dF5cos5gVM?~;cj#^>spj~GUv+LHYutI{1z+Z9X+ z-|-M}+v^dPFRL0D;pM;aC%te@E{-t&tm(nuVzAN=7ExCbx|~@Y&!(_Rw?QS#8fvb~ z(gJyj&NP3uFC-gUhQxI`DAU^ip)Eja6Fgoy?KC%4#@f?sE>49K4nFLoQd05C(}in; zUy#Pj)55*v<|LrPaeyHku=@NVNEUir@;}_2`+vAQD<>EG{|>Zu>Hq#oO{07f5Pb_1 zR)Ocoqmj$>ngk3w!tB_s#9aNZwR{O$an${_Rd~Y1ZwmM~6@AE=(5SClFrZ&uM?N)K zU=ccio!Hiy!C0ItaUg#CFq5VkHDvi|c8}!K+Uci5m(%^_%I))yqs@o&9l+;{M_;TM zmll-PgZVmlwXk5q@_m%H`(BLy`SK|z2J)RGiylrCl1ri4=i}t(_N{vB;pfKBC)m-M z5|ErQ+jqP0_9ys4j0m)VB+muOLOFKFC*)!qPVV*%I|tjRc&Glph4aLMQ0HF>la((# zqszq?PjbF1VK4xE;5#eV6(BUY^|nUcE=5k#Py}11B-5P{*3SOL5|SImWG_DqySPst zt@|Jy!;{W7KVBjlGfbf(#`6U271kUh5LA`KV>Zkq!;(AMDIu&QR?mTS7Rj{$%%>*% ziJfVLfXD_iIR`{OD*=h)H@e9WeqoO9jgk@&xJfHX79x&^$UeD*VTYw(tc=De++C-> zacQ%BIs6K}8(tMuU&c;A$in-owYzAUPFGxB$cNQA4YH)n`(l-UM}R%uywp*q%9Mi763&jO-4iX| zfFut$is42Rf+mG4bE<&z3Op9Gs0S+G4 zZtSp4yx*|HsGwkw5i97?g;^YcJypAY&uAjVs+1nN3?S&ar@H&OqhUDF$*F`5!vb6y z3;&#RhMvA;c6ZO|Uz=K@nCCJ1{0$TD)iMFT9GvrdF_OLnWKqFuJoZuXf_YU(+8Ex} zDSFu7^)@;-<%u#J*fjAz22PA7XKflB557^*G~m?^L7sntHk7Whu4@C6jpLz?TTO7( zyVr!|fNl6M8Mq^iLKw@I7ayylKazb4YN&1;cR$$Ic!EgT{d4-+Qwbbe-#*+;TB)6Gh-dY#1Sc0QzpPP}EVNYzpx0-`zU3!nw;F!~Zq;<->&h zyOHRni-0j@zD7>W-#iTn`n&kiAm)tBR_tMoJuW;8HsMGh7j;($7!aBb#_NWLm0dpd z;4f;{au&>Gpy11cAC|!1*nb-y-ZZ0wbdDsOj@td*t zZKSG=OGDYZlg&B(QHA19x;oc9CS&XHcctafsBv;~eD#;d=?~iynUyG!c_7NMdb{7!6;&e6HW*s)EUuj!e0Si zm(WdM;%_Rb!x+)?*iRDt(Ihi}_~aaa`kE6=l7E-=viBchef|#O4kxQ~+3Ra2LJ{6* z>wDelGQm1yF;yZRP8DNeYuUlh5RfMn{bQ5{WedQ?k+42ee6v>&E|`)aZ0eNsGkNi;5MfVN57ltEXR(BHKFRfWfkP;lpR2a{~Fi&Drop9i+$ zk(P(GVG7~GDvdlBW7o3MEn@FGf|Qjw+PY0c7~m57(gF1d(c;|VowDU^PHnq0MZT9od5piAJ8xS zB_+61;$^8$e2e{; zTnPwN=aTppU?gsN3X33G#Cq^G-(YH8OA7}fzi@@vO)SQ$>jAiJlydZEMP(w$dOiCl z8DrCbdZ8!tnM|mMhbpm1Bj7*>N|^@Z7sJDYUe#;KqsqCi;OFlkVaOMi3pU zH034NM>nw2)%C_0i!)J+x0Ag+8$&r&%>nK@RkC2$z@)C^#+6TUA>F`C9h@Ro zL?q;aaKZ?}*7!7IBiRNau6LVKG{{Zm20e)G=m}!03fUV4fC)8=Yly+?jgp6D}KgA~Y zFPDSpW&2}&AT+n(Wdm9Ba3vHyW`4u zIdc4>W;L;(b4wpPLWFLvzyWUJvL6-3n1;%kYcq`HTze+??P85sjm#uF69gC`i&49|zzh!l*y-~!>S+*vUE)uv>l zPEoo_yZB}$qLlk}I+!9MrOQ-e#dl1{J&lx}`4{^v8s_d4MHO9AJ0VrHb z!-Km5rMq`L_wKg2{2XF!5EFG&Uj|S!YTpE`wOcmrnZ9K$?cr}|rT{*Cm*ZG|7PQ~g zv?-~Q9%_vuL$a%ps(j0T)vM$GxO>k4r_sG&jZXE{?yUniY7}!Znd;`oL>(?0?mPTO zT~9vQqG&Yc%jU1Aw?80hd&1=QiCcG6SK_D97=Qn2?i&1E;^mIVr4t%Rr$_c-79a8r zdF$-Z{oio||0xPf^1_BodOQ5-bzx=yzx!aF9mNePB)_=iZ)3tMnXSv4CmASeY0!PI zu6Zt+NJ~N|Zc$|NGw_#y?=SNe==4F{Ni$3^|@KAWJHw#Sw{m~F!E_f=0o*Qg|QZFlb~(QqtNQNk`@*Qf#zaEapZhB-&!zBmm^>d zS}$dOcbvt1iIT|GlcEk`1y>F3gOi~0vdJm%p|tq;h3GXNnOgJU*$1_qnfA5(n#6R%ir3xrHKALe+tV@c5`AXBpq&)$wwWlPL0?a-bXV*t|Sy27`yR!#u{*+BFZ!k_= zE-r7RjPD8};W#+p3R^(HUJ0X1TPOv6&<)T28Q%1;$~`Wbos6bX`hU23$M{I1?ooGQ z+qUhFZCjH}Y}*}8Y}>YtiET}6+s@p)@45H>&p98uKU8=1Z}+ZM)w@@%^*oXAq~((a zSH2gzR~@u9`q}lfOX&%y_nMULBw4?U)hK)YD?(-BQRcJrr%t|Gi2L|m#H8JZWd#n} zfm1p>^*=iWTyXWnHeyM1TF}rt@-V&N?0!*WJxx8?au$b{EF3ZVw;e3oxLE|zx{(Jg zvOf}sp~?g*O}5P(@1Vo&>G0+@lz2J>EneIrX&_XP(&PQ?w0ML*-LRtaiHLLC(&ZnO zk1)VVv4t)8n#tv~(EFGqyTC@SYJ-w50uq3kc3Q;#Ls3yZ>Yzp1T&}fOKivV!rLU8rRSmTdJvq^d3nbBKf&QSDWfn;nxuN3`4h8F=h4k8Es~1|ASD z)T>ckZs})MPkHHL>TB46mEp+ZYYXe63q-P*h}W^`H>}udflIT$gh`&9mb%e$?|Q~VWSv{ho`{-&b7 z>Sx`18A-}?DT-e0V!k#ajP7Z<4=nDYtetUF{=m*(9Ji^QpWe=vmm~B-Q-!sN(UrQk z0dWoVwWsLUfhqN1i<6QqZrFz6@FvuE7;jU_OFy>sgM=&IWI*cCa5A<@TpOQ?Ui6Bs zbw=13mH*Lj@lKn8OOHdUWwJDKRGf&pa@mP@etw?Hl@q|#uF zVmKv#4ZA*f$yd~^Ar1O@FZaNXu4lfLD)3(`f&>QTohjaQ-@hNAvC9wt?RZ6gp#pMn za{gZ!t!}-`*mchNf8SY0uz+)@PN}B7$Sp+q0Fz8iZ=@^ERGW4D1YV)@&FV{A z#($q|Y(?a2=rr0IR}QYr%W-V@)9~DaJtr53X019Ykp%C%p^d4XdhKo1c7H<~HJ>{- zKaYXAdcMA8(_6r#Tn+a_J6E9l)77n4sNkm$u(y&^@M~26(`EY0c8cbxa8 z-#n{SZz-Afy?nlRhEGp^IgsHcu z!tNX?GY9D;kN#cS8;H7x@vH#sC7vcyo74#D)Bya(qipl~>0?k|xOWYNBWPZ9$mLYV z4xcZLsqukav3+YE$|eYNf~Ws39=B(3c)f!NU!U(IbG3YmGGUkx%A`6s=p!4cF?0~( z#av8k~y(n;@% zt0Swg5Pt0+0HT!{JqGlOFrl4z20mu+QluA`d`2L{&94!3;gKCjJm?_|TJ=c{cjQw- zp%H8&=Dn=^>8s-zw3pvOv_ymf29gAIKEeI&LaqMP{J@;~ZQYhWz#~*bH7CZpVfA97 zGoxHz0?622%V14#&CoX8hwlJk{HN7OO{ueZ`T>ff4{VtbYKw0fX62#P^dbB(i4sWK z1R@YZq&*z;ix@+W&!4bby1e7*|vfvZ!Lt+ekS?&11u z?4eudTQFh(Cz6EoJwVYMk2yQ3qH!{mo)9RzhaZS9%?rY_3Td0`r)yBXgo$f^TCic6 z+ZB+oMDPleX4!0d=oM{c968)R`};U+#)?ZI)4XHv6Vs4DsV7G?@1|1l2*$U3`ImA{ zm?8gm9^9WT&nuTc>$DG+FbKd*A1Asinq3sj--N`yKNiF;*h^$f9sP=KpUG?L3GcuZ zB&6A@Dc{0V40LI^EJLnLjBhwHLT4^%&`MuAueov6oG1d&WOueoc(J{Q& z^8~|q!Fx(|iyM^TvBh`w2JAc~U2g!TI;v?5sq`3Sjq zN?e_E?2^WfXLwEOCd^Dk%ZqEw(-}687(Rud#1IN2syLFM@N6pWUuDOOU^zflx(8<) z@dia=R*XLU-fCjHh!2Yd9r$W`uf>Y-nnIF1o+nGhY_KW{MVte!oiLK^xElN5h$l(@ zIy~xX-sm?v3AR`Ji{^O83xjc$gUyQ)Q#C0m=nibp3uNp&K&+S!+kqu2#_o^eH3e)n zPUQZ0H5V!C5IITi(z~F8bRuAWwl7mN{V&LmSi*C^b?@muvOW@@q4SbCW5ncJyOpZQ zcYam6(g8MWm@aUR*pR$!*TgLUIKLHn{1pVuOV`b!9j%U2F+A7sf9KAX@q8o`%HD6MLv>Z>ePn7$1W>KZ91w_5!{o zjHJEucBHIa&Z>QH*8}ivOAAJ5Q(EBXuk4;sjk5W?Yn+6<>)#diB2h8}Ju4b$5B$}2 z{@0!`RsslpKek0ria5+@_)65gb*=9IyT2@I03-sy(US|n{VgM>7q~GkcR)p2(D0qd9hdzibk2@cPf zUTZ3bSIB>Nl;e)8>a zjHuYh2{9Tj)&BxU@q@LMTWz)5m*P0ih&oN0scFhc`(wf!Ip6PAV6ZCxNK#zKu}5K6 zf_@F{U^wcKVD^L)xzFtxtm@47H&)d|kjjK0rp{7l30eAm2Mz^wk7A5o zK4bmpkQh%gm1?-AdTXAoY!3bTb_xej=`km;fgqPA?2?267dqOvaSeXjjp&->JbQA| zyqrLp5JO(UiD?y0*-~Z&u?>C|{N$}6h>lhyQyd`?m;}l>1P3KdlKS|3tH~QXsfU}Z zS@J-Y@)lg5GnF}L^Rh|kV*{Qtdpq@|@Y6JqK2(`@b?JDq@{7cA@VS9i z2&kvC|5GdJxDR!D z*d{uKQd5jpdtyh4asXa}Gc#vodWy6g=yVJE#PnKVeZSCkWdnF&xx zxwfbcgz{W9#wp1eRTeSFDar1P&!)^SIFl&`Rn01nr3~+M3RkjT4VgSQ2 zW}jMEHJsR9i>p5qHpVF35nf{C1d~@2!;MAo8gcF z3P`}L5m7Kov@j*ik7JKrM1ie$Isg&>OgM5(a-$)4$8bW$D^B(d7J+wT19TlQjS2#Ts$nE7O~h@pe4(&ZqWB%j2odo{kv!W_)7LlUr)UH=&%k_3_k~}TU8$bN@wG_7Wg>cxmIi=jl=$eTwQ`TMI9281 z24Jk();b-Of<{|Zs-0K+sW5w*_A5)mjB3h}a8PR+BlH9eV{jP;o;O+V#%n(kaK{dP z4QHsrA2&vZ`^CC}HfMDw#>V{5_4PaAf_P}0x|}aAxvH}L?_}0->ETsdoXs=cwpIa5 zTX>$nK2^s80+_)Ewh9F4-8O5-`kV~R`{u@^?s<{)2|`%fd7-)KFjoj{cf-DB3^3QR z|N3Go_JMhpn9_Nc8Wq#;Az{dkDddAy^1$xs$$c88eM z{JKf5be*?aC61?_Ev{0x`*3wAR^py^vh3od*G}G93*1^zka>$S*ZjI?@|}XoJdRFicF^^0o+v5cKlQ48OL&UR)YTtnc*l}@$+7Z5 zI^0(D5>%Y4Ztt-!FmWp)zy#q{gZ15c>Fki{`UfmoOjVmz*Yi+?D03cQ+!-U-I=X@G zJt}k`9nl+xbf(}-*Rg$T+YL;tI z`VTn%LhSW(Cp-qKW1j}3_u;Y~XYkg+oYaLOr`bK7u&e|VF*P`!C?c$+&e8^{R&snV z)?l{umN4b{Y{(rs@Z^TncZVh?w(*cmf7$ex-io1isq`SmX62sDLAToRV97|Rq~`Rm z53kZ|#OyZHN5hw#M%E`DwJa4vW0uK4J40ZtDkAmzB_^uL$N)&p?{A>O>>mn3;vLub zVP%`msb`!+UEdyM*)m_Sh1#wK?iiGkeN3@|A(o+3rkjjLJ?Uq5fq94+_GeN>Pe&M# z=YKi7(mXtRPkS6HwwxX^vbmn;H|Y!D>LT-BA0Ps3(GvJ*exIOttAu(@wM*;01kOOC z0EayKkax9bonU$qYZNdkYFZ0aG>j}c-0Oo~4gSs77Ud9i^&?~oT9Ud-44N3dkb$zZ zBg;$Gd)&=+Bd!_g3;u)*WnBo?H8O7O!{YHmc&BT6$vIRIHjisPxvQhKocT{IEzv%g z>%q(GLz!Q=?Kaa{_BV+AJ}tH}^)Mf@jM58_MKHzqGqU`{TrKH#o&D(W z!)8XLUDEa51J=w_UA6j#5{)APx*{^X70tM5`PP|E@RF@>T=1So5OQpb2 zSJljJh5$ETPE>Ee)0F3N`5{(Zevx$Ohs$4`T-p#j4Ogbl_RDhA(X>AXnt?s&nzyIE zQ1(;P5+mBsDE#K8@Y0INwr4Pq%9XT0WLt6AV97#GRQx2$YF$ZsSQJ7LFR8OD;W5`| z53!bD;drEj`Y^HUomtUCog`oyB6~ckwVWmC>_Gx0PW#s-h&^{2A)hpN&5vj_KdT$D zU*zm6@reag+*_qwEs{)(O!-{E?*2KHdN}TP#t@Lm1%v@rP%KvQ9V1*{0y#^uVaMm% za9v~y)3eOEHg}&8IH-KMF^sDcLEH}P(fJ^~wx6B#aAOb^9m9+Xpaa0>NIiJ8VIt}8 zUdMhg{Ts)fA+30Luic1)?DVX^9`VN>>Qdf3yWDS~32z?#uaV`eM;`Hs6Hj>T$g%bn zj0(MH+)E=cNDGxFIZGPNtO}N<)}ABZRjaP1N~%~@ z_f+MOEmD#}D`A~tJ6nO#EA)}QO7TC~DrKpvlA%UfFXYZ5+5`UXl+Iqwe|#tQIn*a7 zVB8R#6-r6P?Dp6E#3ex}MNV5XQp&6-D)vPfyEu8{3@cqX%LLg~rI=ez{U-R)yNT6% zO0<@@C@m2LnCX57V$yow+@(%)5h&x_Z;_bl^9~BbJMl5yv1<6rn6|x+ssCcSNr<@+ z*{(KCYacA!BmiC}wQ4q)yInLv@)BG6dd804!SuLuy@RNut)5k|hK@QBkR{yCiSR|G!OY$tDsYkTxy|#Fxd2%`Y_QJd>923zxbS{E&ZI<- z{6Y7fsPZKgY&99VGy?ke|yI~u+iC*ilN|~ z+P>jKU85&FLxj{8dCXfsLgR&t2ytusxR_tUO8Gjitp;MX1F$xtuyefV+Qa@{#m6WpID|AH0Yn*FVz zYr}c^4{- z-NKdQuAn0H|2-+t^i>0ke#~#piI-2 zs>^pD4+3-X_Bz|@l@#w))qkN~cL4Y7cwn%uVkekUFAnYP2RZ>fzj9@yxlJ!xj15xs z80A8`hUO5saz{V)U|a$XR=T!aR1G~RPtZ2Jgf+8U%b&kOzJYZgK`T-OV?TEYvSVVT zmVw39>ESqZU9v2WIEq^$L#K7|17)7s^!bdO4Jah!B2=`DDK66gu3GwA=Lvh(T#baS zotJ7u8_2)ODGj_GvzT&6eO;n|IAYCBtb>^XvUFKjP~9mQDnj)`3*MchjQu@gi*S z)$FKU>Z>3DMCg~LW!@4`KSEQ8sjqtIF{6nP2*kwnUjB(6{&f6rc`G;THzx5vo^tHe zV+s(3L_P!pbXL~?0V}fnR}vv0kg5O!f|bbsn>aO_5@Z0H`M(m1@69)e-<$tO$c~cA zLk)tJ3Qq|FljyF6C(ix9lpwpA|DDMA-#7igvI_41@*4klSp_#|Dj7A1 z2M70m_xr!??ElO3{=ak;|Mgt_A0N#1A6*3qcVeG9O{xS9$T0fIEabBX&j2_|XT)F)v z-(hUwL}}>9$;yRuJ#cb-&(G84)myoclosSRjA8SPp)9T^WE(jD)t|KPg3|0a}co9WrL9*!fff;YZ?K+M21(GM;upwv*G1&L4Z-fl{ zIpbADms)NBk-JO(t**{cMG<^P5We1zz0%yfyEHCdnbqfdsg(D@DSgexDj}Z0J@vP} z1T4BZWlj~Y(uzU}4g8ouGUx8tj_3x1^2nlEYK9{A4z?eQ(wl52o%~}g`|{kD(;GpV zS+{*mU;bbMsMi#H>BkaOKrK-mU``;6Iut`tT$ITL63@~xrO}U$y>_}YPhzDqCtNJp ze9@+L`_DZd*ACMAGvyv3QbeON?Zv1`*n!Q9#ixoTh`(quqo|=!J)z2zZ+5;6ceYsS zKxH(|bQiD(YAqnJ9?L47fbsa}cbwuU4#E{h8@CgYF-7Zisa%bX4p*|lyHqNNK8V2N z1Pq)5y-~1X>;pGrM6^Y9lE8DqlC;R@GWW3zx&$)p{E6Vr&J`OoM<{;k31J2)Tfit+ zjwC%NhE0q{CK86rUArwjQV%WT7AEd*r>F<+wV7k9CJ=^X=UDn-zr<6`V-9$XA`J~A zwOX!SV}OJqqKWht_f+0-q(u=PIX(_4Ehtn0JN;097@}Y7P(`;LP=RJpbjLJAsvYet z{e*Ay@$~_*Q!=A~beA((*$y(o21v;XPK3%xpGN8N2dZyw9MHA+r8%=qV8&qu+MB-Y z(@{hY5yY8j-Z+{c4ZJ@JQL>boZPZ)c^IBD8aNR_zAw;p*Mv|OI8|2)XsQ51GZ0!jE z-(ovzKT5?>Uh-2NE@2!qDD_b11Ha=NKvnDdAlCaNdc*6n71TMbByKm1D>gKGrBM7g#@)k zf1GY*pORHnr!0>7{uoi^V93^aRTJm~J0-2As77CEk1)vY;OJrg4OSwlq13SO>WeaD zSL1YGaetTWX!=;RfSzYL3k;+<*ajRRpk-yt#G)kL~0Ep3kcm)Z=WS%ziyhDEAx^C$0Yl#FPA`od(qwG8UP6$dJlt#F%lsW$! zG7E8m6C{iCT2eWupQ!!|de65-=H@Buv&jkvB%h*!WE=5?C526b#B*^{d4he{I8C4Qo=SLr4qtv{VKMP$Xlt#Hh0Q%`qFmBR6{X=vM_={l;Qh=F zi}MUhKkX#q)h)C3E(M-kH-};6Z>xq@u>nk9bwa~nOkE&fr^fVKcuoQXa4g!hdXWiR zdnX)zGDnAhgDlaDo;bKRA8YjyZIe6&8gDrr0Te9*Xkz0CX9&Zjid|E1Htt-(OoOI4 z$Par?XZ-l8qL9uMy{Hzgnf9j7GuR^-G=CQ^w3bNb3MA%UrWtNhS4nY0)q7pv`!t38XAa(n(Jpy z%B~U-g?;}MPT;9yz?Wz%DH!bm+W5)xU?*#Nu`A(Jb@_hF%Z<>RNuMZkBbR=$y3n(U zRgZO_&D?d`U8%&Ec=#<` zn%6@|y0vv2mgfE}SpBy z@&t=|jb;by%+|rkUCn9L7Z~K{I_eN0VAe@0xNQl8vUtR@55)R|$pbqU!-}vZQo<5& zS-jdVEy7Z?27)_Ge;yo?nNeNTXld|@67z^&M){k!J@OA&K}SB_)|h!V9? zdg*TD&^99j9cV7&*LY$Tj>#SCQt4~Qb6i?(1in#_C^f`h zk|ZD`Sw6}e$USMl*v360=3&Lv7Ov zP*cC>+DEQyTw78aX@;-H1afJbkEU^bnS2`ZKls}C=JmOoF~nohe%xp1$8m0|w!t7m zg)CSUXcO4KANQBKCmcS(N+D`?wFXxd0SVt%YqS?(>%yTx;yL@FO#;!4oU2-=2M-l( zWl~fis0+|=-g~NUx3vHqf=p#?Nbb6UqdL!~|Ar0658P6L&+es4-=T8ZvSyQ41l^-c zGONDf_dD9L7@kiAv0a0_{A@10<96hNJZq78vHY9}xsE^)8i%&TXBH)em1_B*!+qIb zVk@V3i6Wl!Q>ov9bj9&Ic*)JsB20+Y{Of_hB3wMuIfEs_a1L#yy%qq1{6J-`=DKqF z^5CXn73vxF$xx#~)iqImivQ@{flH}rQh~Ta;`*b)1Yq#Zt^kq1sEn^>8H5t?h`WU4 z8b2a2B!@@=)piiJ=Soyvt;>id>? zAJzE~MH>;NJ~n_gS>Y3(95la>p#=nvOcUFNH|#?8#DvOs3wHIJ77ek&mHxES#kVtlC}s>#u07(rN|}UeeGvdv^!Zj1ar*%V1qtZrkOU;EBn8WI3=g z7BWFX1eUxI@UGFXrR=tV{tqO{*9Z%JxF?#ceeSz@c3NZUNe!H;uf?rr>rETBY%Z`Q zxM;6c_gf#Ql&l?ZBXfZnPg~D5Q!aafh(RL?RI@=|GCh(YS2t70Q`uBqYqbNOY;CmK zoh%cwwB+;pPvYR~EbWs#w>2@CJ2|JWNuA%OlgM?KH8$(o-WO&Ex}`a?n#VxR6%bB` zop75|l2f2VHkzNL{(*X^o9}bBrGW|(LPKR1sA?|Gs=Po+h_gZ{T^r?ZI76|=yxp5 z_dYBdYB<&Hq+)(zh2=y=j0A29cs_=QbRb2ja|7D5yLE0CfgK^v}C_o=z&T_B_qz z;8;QUEseI>vLFv8Hy;G}@A%_jl0t$|iTvLP6zq)d>#3Ts1DaPEXFji3DTKsfIH|au z;T<5S3a|9~68Z_d*zk|OR0g>EIEpk=LxJs4&B5+)P+YeZ8Iz46`?~OxZbOs76XlBE zr2fu4A<@u9E81`dco_N39wr|f=$hhTsgieM?kS_UlS*Cp*q9D*N$yyzt$WOpYr~KA z9k%Ts9*+*5?1i!Z_7>RHgwX7CQ=;*TO}=qM=;g?&{YmLi4x*JF6Z30y4b}<%{w}f^ zAsDtDUz?EuWFmnEe9M8gHY;|tada5^h(s!UOX6@uP^SJ3QWcKeWsna0-{C|8%L(RN zwC5}%CTK4J!9oa7Wdo_4Qzk(MX4O+KrE<@zMqy_EoTI7|HBlX*5sWYg``*#L0+GyS zMK6!LrXC=V(q#N_SMF7*zq2(Nn5Gbrj>@mQZR$V8pTxA1-l=iP(NA*cV;90=@xySrJo`;!if2FdE`yEoEkQN!qi1$*)wcO zT#+Q!pgZHEkm7$o8pOJkwBx<@d>!N$Blxq;94?;f%-EX$Zygk!*YD^t8UNKeYt-9` zBYC>nUD>XP)!5qVGgJ3{4c7>C2tFFpNUJJK6Gus7_v3WNF}MKPk+aEsatRYj`(g=rhQ4I&{0bZaAL9%UXlde*8~LXU=QZ(^6T zB5TR)fye0^n?KBmEeu`UZS)k=O66LT`dVs6@;7I{D*JrEsZ@GhXGPo+5ya7e4t1 zW_Z9G{hcVm1Z8GUWl;vD1hR7cUwMLVJzZx!t_DB%A}3IUFzg>C(w7xvc|b_S~L5=p1KiFFz}%3hNN zAkcK>-{;*BPTI@J1lIdYzeoHEUJo@^)M4VGnu6UG){Qg2E!BM{hu1A1M&jXzzrdn8 zqvvQSm_`e|$rd<*@1KsT9ud9c(5A6I9pXPYNwl8XdfPr3%#K2t4Wp}ld*$R}WPQ4n zIA7?lEy1AYq~E@q1Yx9v^x#c@p>4|NX?YY7U(b>O?i_cDa-Y@?! zpMO_->~wCyIH56Ft;tAcuFA(4D~6*GZ@(}x-auUYbO68n)C|81luIOi?yTJcHurAd z?;pw_kw?dFAEe|Mb8o5qK59@L$(Kqm?oGVFk@>sZKKKY$@_H&9mXE3kb(5Sx#LEn*^X2t$|?o-M;F*Sq~T<88`Wro>Lpf}$N6n`PI>FQ2U568Dj= zPo^A_L%OGG-znpFn_o#Mu8kMMgh*$;Ba10jxQZr!U#_Ev=g)Y=kG(bsu7iP zj>ff)%REzIVo;va=O7AilTw(qZlxKTFMYz&X*mw@%B{%Px?Vyvyh%GdTm_QiiyPr+@ zQuKCxk+1tY&E#<}GR?CWyC8I6!hITV>aW$flMijEHB-P5o^pG62DuBr%#@1IX`+%S z`7fbOzIU{Y79(!!EZA&eGtihIB)ZGz>eHXSh39Zfg|6#DRBD^}x~RVik6N(WF5Dl-ZiNWQuI{mCi=9Y*pv`u0fIsej))5w_Jz zUXdTx3GjqMLV8k-{#qY9-2LWHvAZxQaBDTE?xM`7O-WXM{HZ zgM7E9be`E~+9pjgSb;ZdtTAsS&MUK;2xbSlO6ujTt4$Saex4ihEnEFm#Xsx}IJLt` zkAFn|Vv2vQW^l3ZT z2#(GKKvCPkVr3>-W$j0xHoI2Z%JWD31MeIMWFkPxwQ=^%=OZk6u73cr0~H_>C1dl2 zTA_lfES&VUgWy$C6H1I%xjYjXSv>NnpFQ3Q$3RBv?DaaT?|>lUxPXL87J~bc%bUw{ z6qkYFV`WrZ_&9245v5eu3A>->%(kHZA&a(4i>9h6*;v9 zFGo9tpI>qVrz<yM|W+9L>u0%<|RtCsnvU@058OqZ%#KO(%{@ zVFa5<2Iyn*nH!_nOwxx~(9JPznFF+OQ?;cw0gV9QmLH#I?a})m=Bka7H00ta*MbUV z5^fWH8DX2Th$3_{5fxbVNq=rrjQpe?`~(%3L1-BmSS{XcA<*I-RL$*t2qc%zvr3Ijk%08wM6yyCSjk(PZ}PE0GIq{K26@ob&i{ z4S2D@c8d(=`7E36=5?64=8F=Lp7xM-!W||rn`YGSba%$`2D5%-865nNs6dOTQC35o!~89 z6uO`z9*}7z5Q5vXb96u_YX8n6Ny7;p-AH7fKgT?bmJgyy%Po!AG-M&BSxdmzF(bqL zxMOex>=Hq63b}~nS`)IX%`iy?1LB(vK;la0rx-8dJVU6Xm8w&I2`7;NxFhEpZ7Kk` z={&&RmYOPm{({Z779fN4R(^RP*->@ZKoVC|izbDHF?*ZVp+M42M-t^iP-vG`y%7MQ zH=J@o-PHQ|8_IYCalQn8IHy=ph6~YkT6sOdOI*Y^OFGhJ#039z&0yT%LYtZ_c^}}u z(aodYxa!_`Xp3xWY%9aDAd47JWD*EGUNSJ;;PPG~eYi-bE+IpsKuzycM7J1T5;;vQwajcC}=(6uWFuKIJV}}`{N|VR9mh86urs8(q6Xzkf8+FkG3jUOn1jrOg z?u96YBJ0M8f3x+*EeTja!-YYtOVPr}lw0VrOkq(slgU-MBE(i@7Tx0hDoNp6&J)jZ z;D{Hnr1^_oF;dNqE0cFzoiQv;AT11U*l3{1M$bh1T7*q|B`A;LpW}~sPn&wte~!|d z=(j##my4gUBz%8aVhU6s4q2yD8OyvFebi)~fBga+IdNl+GYx9o*d_+43RlcziI6Q+ zIz#y6cZ9KiN0^CK5Y4EIW|+kxfR(_#ma#;|9_kfk_j$j3ZTU43mqu|(e-h)1APXzT zt&HXq@iI_iRph#A%yB*}Zl7FTPLf9^n2_q-smyU+Y!a+RArClDMgD=GNL=vVj7nlj zeIY}I+_K>MgF@t9&3<%%C_Ae8@UVfM=2#94E0lMUc!HLRD;|@ zLYlN5n{RV)dA>YcA(hOD3d9=jpJ9v9v3hOX*|w;3IVaqozwnd&h7Hf|%!wl#iA!VH zX4;gr1A)c@)8%UhprxFQr79hZtQALUBiimyb*1?U6jL4pBUyCjR=D{ds#G_-Nl&#nyd6!{A zBe@r)&W6k99G5r!dP_+}qdUdE69w28<>dI7S4w2n_@xpfo3W|a^~WAhvzO*^WK~wN z!oVfvR4cb~#Vf*%hBD`^lGdnPr#`|`dsbW&9z%-nVNd;>g`rcI5fpGlk=1&43R7Dg z+-yaW(u_b>x(cbq6NCf}aT>t;Ev930 z4g?3xb7EoClu(3@%ld~YOKc0Xl9Gd{48cPhY}kn+6Kl%|>i9#;`v*BugDyHE9cKmm zyK((D4hEg4Gj;==W=Q+={0p3L;?!bP4H)hvJZP8)J;@MSk~rhh73LN`tl?+exn0Co)hdL_U3N106SB-5?%_e`{QvYD%TSbD+!%CJoo~A6v z+*j{2djcka9wv&KlT+|3$unqO-FNOyZ%^PC?=6+r)}2-k_d-scujRd`Tz|k*@S>pG zH-s?QMj<@p8M)$$ANI*>$tHjZK~72z6GKH#SrG*8j>nL8X|$aTct<`n+x4PD)Q&}5_zyrK5^fJa3GhK! zVYULye4Kb{GiC!gVK&n5L+%HSVm#P`AA#b!5pDvY&)Y=MZ}ocsy*1GaloB5*4|d zf!>j(q4h7jzb@Cm{q+7230~f)1@V9OK^50Mm^~!2--KPX#(QhhH$itB38S-Nk5Ck9 z(wC{cp~yG)6nb&xb%z?yP`*=%R=8y4xQ zqn%cQ+eTPo6K9&xe6s9(l3i92fq5mdbS%4xlvipQc9=yF4Y^(?xjgNNwAcFP9C`K* zl=!^D-!!ipCO5NiprNG3CLgb6CN^rhSCwY7Oi?1SOE|C@& z0r}+lZ~sF>^x=Xpx0*opzJikL|BO&=sv;{Ky~6HiMTyJ4TJ#9cr|blt8bhADrilRm zG=l6>44z}fG9+4AhiiGpe6(uwz70XqS$qh*`ZX#B7|Qn|uVSLV*y=lom)5U(R30{z zA6L`gewNI+1~PpiAem05Q@Mb?1Dmhdl9wJ6sei z;yWA@7}atW#!FAdWB+F|v8hfIzUS<8SbEK|1t#I)dqrI24h)Y72;)o>neV5t{2uE3 z`W0n7d&yt(Qc;?ZiZ~Tt2vqUD%0TsFdu$)G$MSg-`FDwj-mN9!2E{V8WQbDEfLsH^ z!Lk$EZi(ROz;L4u8=>$xZD#cdg6JeEa=5FB{00L8_dtUI(6!AS*KOvQYPi!AEhx(QO6|tEUgUYl5wny&3=E-jQdK}W1B0|H>&NE#-jVc zDcxtP;yaWn-Lq{)}4BHWp;gH+1SDh#|^1lEA zclZmFvt6?!1L>k9=d5mg`jIQ|tn3w6#AtA0&VIdbQt)Ju~ z*ut}ggwNgR;Sz_Oy<**G&2A;I;)vZo^Bqog#@5m&Q&XaIs$J>BEAGX%v{Ss2ivLZ% z*8f83Y{!m<%#|TYmnlxj6m1wQ_RP2FWn3f}C`P?2*UDv+H5JQB=o4z?5f_!9%f@0%BNNaOLYaWe--wD{~Ol#hA8A@Eyd}-KB_X3@2 z^a^D}uF;kN`oaXiFCcj&N%S2*;>a+hZX(PUL$SSc(*`6!L>h-o-g66(bt+!^Sd*ck z{6=6fs;g%Ru2lJJpvS#6!nbMwAK`=rbd@Qe{zClO-$F!XT3K3HTd^|acjD%*XK5d% zCF+YJPQoSLGRzaQE_e%~jL;L_Y7!9*TIZ%YL$;>8W-R~v3o(}L#C@hhbAJD3rQ0t} z`hNNE7moZ3@rO-u&ABF;VC^DUhQPqm()|EWXZ;L~8q?Zu#BI3-Dxd4;Y%j(&;LY#R z$H5+Uor+Mv<{B5%y1VSLwwvv*;Huo>l+AM40Y~Uxe%3jG7W$eWVKL{L^!w4(cw)N) zJ|zxmQ-qD&A_+KBkWi`J`&GYIxWewOM)9t^?Vg(_9L&}|E{01elRKF>=3qjHZ8zy2 zWoGMr)Yx@ZeNW?}F;BuZE{SM4q`{ASzwM<@9oYmkzFjMWy_5UO@Q}Jm)5E2PqaDnX1+<^bH z?5X>wu5*?I=6@u(qJjs8loVuFsWwTp(i%qg39d#o$xysV&@7mTw^AU(5l<`EuL@kV z@XTB+=MAP{^0~E&x$l-fUOB0&^a?V!pU#x;_2m6oHX~ zrjc!vgqXn6m5FuKRzDvP>V=O`qQRka+1uyac+0dG4DA-?--?1kqnMsvJ`cyOMvgu% zj?O+VZ-o@}6U=&!Y`g*u7Fjg(D1SpNJNsdxp%r^(+j48bZp-tyhp2jBmzESqB#9`m ziAuH(CLWS`U+;~q(h~)T9+({OulEb-NN?Y7=VXC(S}m5~4D|5A$^tW`SLE$8C+6JI zl$I)>Lr!OMcP?V^0rqWA$RQ|L=jk;lh^TJ}){%m9Itwh8Yht$keSv1KmqHulM3gDK zr1C55RdX+6WLdKmO)1v9-+#rjDB3fFVQQ4e5K8Oam@A4eDKM=aeo%dygHRn)L& z!o9$Id&kG~V&u|ZVKQL1&$~_%&T3iFt4t2zZnF`Ex$EVW20w3^#t86kj{! z90^5#7g_N8_blWXHj>*OSKu;N9WR|g7$E~ykX-u#gI>bL@o8$2ikmd?k6=gOKUQFW zisb;mI}9*uG6jw_TPcjy_fQe@Akq8(;p&{CGmDmX9ox2T+qP}n_7~f>ZQD*dwvA3F z9b5fp?{RLFu)7y!2=mg=gf&xPEN_y5xqT3mCa$OO>TYkej3nJWV7^`&emWDcWmegScybF86}8&?IllI5o-(*zTYbKs ziDtecoz**#bJF+m++0Y1JE&^EQZOwwZ!K#IT%TDoib=t_J~8U+Ph8|V4u&rvW6rs zo&%z$BdUR4V?8w4C2Ymjx=hyf9Vo%8Ki~blJNrE69xIg*^J1MOQk7&Eg`(mkDBdWo znebu;QQ%xNne3&|A>K|^k zw9?}j=-(yJ)b_{&%$A?Iv%x)fj6I9<8=NU;;Xn22(|L{x~MzvIu=a z+?#8WRsLuB37vobYUzvUO;+Y_V`J1hS)}H^@bjMBkY9J2GxCsi@2LHF8JsgOK+0;+ zQhUm3Gh@+nvIuVKPtZUUSZxa2+610(1yt|hX`A^${lk6{STFry5XtTMV99vopsDGF zrz{&FWNg1a<0rtLj+ND)JfIChAGvYtZ?Oj-pRhIx*<%d zrt~?*=p~x639Vz-202KvuBM5^rE?%sH6ZHDkPymL%_!C59p93S;i+6Vq>0uBdKS%k zf^5a=22T7TVJi*jm}H49u9p z2}o5$NeI9ANjOM+H5~Zi<#!QXVEIBbI-m-GkgSeQhx@v#` zekc0WE8uIkgrHL$-+aYviUwfDn3%UFuRo2750;AFk2FYeEBzshqUjqc)`G@uc>s4t^l5r z+qs%!-lJ4t@gI1-$I{{7k&&>qY{mfNJWCn7PLcfMv1J)tDu_Dvc*>y*?t!J51k|c= z!iwg4f%~Ifrs1lr>myp*BAYj*>uQz&D*YDw5nJ~zhBL$iI`Q2@vDRcMdSg4dt%)k) z&VMY&O3BMvff!EXmR?+0bT`Xkg@ijOld9Pn39{qZ9kmOLgCfZ0_X?HuK@>kdPfwzh zwL(Ug+0A$60hmqIU$}2XU1vfsX@ZB%IHswK3};jXn`_BH{HA(zI?XBLZ_p(?D-fBF z!4-}`-3Hd*3v2t@#E5NqOx@elR5j13K!QOY&=ky`j@oBshzEV%r&eRY*%_n_sCgYO zDaG=>WSw$kJv=jNg(nQBwRZs2zY@p%KYSQiyiMd^-t19-deMtD;T5%TkHS!fME?e& zdeeeK>2qu}8tKEBQ|rs#d%Go=c!y5h1hq_+Xq{~^j6utdSbMkqO9Z>Emr5XB^>IVU zV;<+`9T5tVJ!%6kO#b{#`0~4c$;v@Q#QMk^1GYg@OpavUzX85UjgRv zbLp8N7K#n}33K%8o=Mp5U1_6qNk<&$?ix9J?7I%R16&(>UGaw!H9;ve!e*5t&pGrR zwT~7j%EWpv)MQN6V2PY@kZ7_lp}?}WtpoQ=QRzLcrj1*)v4j9!Ns4LLU3Q1o(B0#< zZDTB(6<#i@K7`?|KR_({6SmEOzKvq^NvlW=pan>4>$cpAdf-;c)wD#L>Oxj2*?#m= znps0(@PlY;xL#vzTOlJb;Xan|wr!*?PQFs>gANGlQ5*~+hmop@mDZK&cS{}KYFhbc zuUWqdxW?$+ts1})deW0po{WH;f#va&pXfH!3;2_8fN7DxCvr;%)`wM)sh2MZ-j|th z==D_o49=4&Y|Oyu7GmUc6Zp&vw;bPf5rXW;8+_IefNBQ&qXo8E!E9vQcwfeS!9%Mg z?TJkAFJge_B0oX*_i5V%?A7E@wugX0Bl%R&GPr*AR|Vkb2%?4)pK$|Wrck^^6g8my zpIcDN{zb4qan%U8zEsHJx-8}mWcWHl-aJ?2yXcyMq+#KO%f3b0pP{w$E-vcL4AcUB zI!jgt2B#I@fQtC>YSQYEy1~ATYj3HTo=AjtkM+?@oU$6$TC}jHMw)iLHEjd^90LEt z_yihbOu*bYMx_F?mg5gG7uN0Tmo0ChK4_aLq?>FvDEvZPdsFyiyR#{z8!uZ3{6alB zj~1w#VQKZhuDDseC`$ax)iv5_j;|?SHJFKVLa*?3NkE3)9J4*03020n36v$D%jCOT zLzbm}cZDK*=CyU=`%>RuiK03MieTDgS!wA`ZAw7ZcTPev zntP4q?u#Cy2Dl&4BF|d&9NB0`D}zHC`pf-s>$YVpJfSOIOIl)9Lrn#|Quh;2*)||3 z>;>@zB7foS6vjN7LusSd+rUDqgDe#+?oo@~|fczn~%Bd<5NH`t*j!ifp4-E?+mK^_cIKXi` z{Sci0cH%tMz9$^}De;KKH@V{Tjs(qQ5pU<9-HPw{E5lH;IcRW$OBhs|daoLsI$gTB z`gO*`A$f{Jok1{tRPkx(n0LprE19gd@==V;uJJ@TH$+EZP>+weV)TmqeIfk4IYN7tZh#a}w zD!bUPzEla4V*`wxGWldG&g7OYWG(ye_Rp}dp6Q4>YG=B=EWR~wZsKXbl96-Z&6(B~G zq9%8|0SU1hg#3X7qlBCw{O=|Oeo9;?VlxsO#cyJ+>U^A0?`JUkpx!@(j% zn_xXbw#_Wn-qb%}+ax>c|LO;XG{BSq7A|(~|6e<3!`*gSmU`w_e~Sn>5LST4Z|l~j zUqz`-7P8pD$AD;7(q%%7r$@z%8qu0odi&r$ZzcQXpl_$0ZxTz7|J1cVcJaoNGe4dZ z+vnx%lW%@JW&dNmqQFSde0BIezkFFiICb%H*YReOJ4=XB0U#uFWa)K#x=keimBF|< zRwMhoewQ@w|H+5}{Gbh0K!LEq!Y%ObH;geMiMc)@S)myWJ>)-DZ#f|ea^Odi3EfFZ zML|k%oaY<(@l;~Gufmn$Ut*~IeYt*I!nhX^k@S2mIiL3OW2M=Q5R1E{ylkayIN`O>x--RWY4@OK1z5+vjtBTVe3K}=huD1q4 zC&dgdXgW*A&&{j78y@j>&!LqQX{rkHB@EcO?8u1C1N2KK`1!t_q5o%3s&jKTme4gV zCP=o_@Pl{>xR(fXZVZvET=T&7!R=AccYl##LrUs~H9&Vx64?uM=eIpYKpkl~ADoZM z$1vjOfjOheA2Lcapz3Sdu6&g$N-^iY44C~u-T}})>6?)p<=^@vW$Pv9L96GQhyenq zm9pS6fG-}L_k{L$<4It z@ktbkWJqHL%%mUT04`Rpu#5WBD3NWzr)2^hpqD4a%PXY(D2I>@UG7i5)Jmrc~`lbHqH*@bf_ z$5};YM6^pZm+qpB3%V>K(gyTY!K@30Zh=er;`53WXNF6(MdU*oo6Pk1?ZohAaQgcJ zHe?@7W}eEFF(b2i>L8u{&Q(!HoroD7;D{;+nH+^WwdPM}j-)QYc#h3(5HnO23CF2B zx;)&b@T>d{Bp?YsjMyC<0)!QimaNl z^V=tS-5Cz$EQ!h-yOY-6k~2Z+ZN@?gBep^{@*b%Xgi%^mCgahJ1A=jQ*=c%^=p8#j zJ{qZ0k3x&b9P0%r5dv9TS-cz?F!WQ;M7~Y#8D%73VHe@*o6(79g4HX?R2NDB*I&nU z$!8<8b87V;EQ|i?Y{WMdc`!_KPDWuo#x=Thh)><2P)!}4MNOOzpmUxyqn2oDViV>` zlBh}ABxQ+euEALPCjz}E5XciiaeK$f-x9ilT&LCl>ujT7hrANFUCfybaC|`>{fE*> zyp7ChhI;rPd<5CAx2vkbDmodz$ORn~rCT?9KTk-aD)l2T;ZHL1XJ!^D6M}gqVl5^D zi9Me2Lpk+5)6|2($>PiiWBg`z_9_usszMdBTy5F3%o(AfE3JUkyHw;~jwQ#J!_ZI{0m z-aX8)6uR|0%?1#>y{AH&&UE?qi^V~AYwIIvdQ_Su;HakaFW>#>2IbLI+%J z9dT2jwvyFd>|hvstEU&@?6t`R*LdBUu5iN|lE}z!$rY!GYtD{!c?YQyp?WJun*i4-zJ&WongOMjW<;YG}>; z$rOqB;f79#$sc(Jz?BVoGNj;bV^J4W?Ag|e6LV)gh}U3(Ez@qCv;0%sOf;F1s)TmG zF}e6u5Dk)Ex$s7eMin*gJhiLh#AfE~bffX9J!@}{W_SW7OsvxSW}$ng`tIv;J#n+T z0p1Qrn_XcTVuG|Qvio*I3yBK<2fn43%4`3#b8xpUt)4X;K)v&iOO0#lG#Z=`O`HRI z<&xl*>$HI2n`t@CJu5x$|g==P<2C63%yXS0~Fc1Jm?s@ zPU4Zfi%cepCcfsjF!y+A#5U)jK_}wpJkab~VcaXpKL@`gqAa#l z?LruEhd_N%0V)i*f_)4fahga?|K^!|08dI0^F+Q-bQF&V+vAzG+=+0U6iPC<^22+^Bi5Zi*5TZhDQ# zz5ro2;y)%eGk2Wq5`s>9k|F)RxhM3^W<0&LV8AQY-QiJlZD#1EA3951wo}iRy6edf zYTL%-UF3V=X=au}^wOn)TU}8*@!8{bIk^1@?NL{<*8NdC6blHXsGKL?A_SWjb!*5Xjj`a`_g418UPawJ)kkYwC9=3b z%HzN^K56LE-VIBjG?t8*fTjYsNrPR+wG@QnY2-JLW@qlI#&2eERY-(}k#HxBt}^4x zmR)SHeKp9?OZsWmFiD_Rte%=R75m zUS>KY%8-$(@Ikc{lbKc_)782QNV_)>CT~gSG+u3#eaM6(qCGg z0R&MC{SExT!N4cd{iz9jf{Xp&WckZDPr$^buSlPjNadC4Z;wZGU%lgPMm*b_C_weo zK~tT614pM~iH0K|N~EWXxT>$ALP+LTU-;X7la_Z?3mOQ+_K04}Dff##0xYd))n3i^$9E?6%qzdQNQIzb{ypRxooUkm z?i=QFde&v}_(=WgD#2M8^X7UkJxKESXsPkOqk!%40{LYhz}_I(q68O-1A;I?OQcpD zK;`iks#E4UvA|uyMueMxDwGn!6Y7TGSxqG`nd`aFbK}+R-hT|SgMY@mP2zxc3vh$@ zNS1(k&I8S-pR&%i=uCPtLe1YRJtNJZBU{+woYHcs)9r~tK)OeTT@tv``U(D3kmSKRRMu==nMu(5oj}t4|Ut+`0{mW>-vfKBE&=)p(6e& z<@e6(z`!mzbwD7Rd31J<0l%DnT*OQJ5(Pltq`PA~!$@8ggbOu8~{*srs&-5I_+~$wzG~fCNfP^7)0?qG_ zRHM0{*X=oPI~N~U4=*2A*Ga7F`ore#=WQTp-UQe3@Kfl#*>4H2bKZq7mzvEHm@_lP zN7|WyFBh-d%`R^o@VS@8rkhW1j-&hsO5Crp>u+Z-CSZ&KLIS{5a2V|TDmon)@$siI z_kG@nBeY+6$z;@xs@NS%@*E4n4|Bbqaf=DAb7Syfw=r$ev9tXGw3eM9xdO<69>jvF zhLNqO=iikRJCWkP>zmO%84UJ&VEPB1V3~z%rjoA%PzERh<)o#+XDkSX^~tBcGcJVh z<+jt77up5;;tk-DF-Na})#D!5=H%&Z75rhZ(n7f>+nUkkOAfAH>@%nW39|MlY1Qu~ zX4Vg!Bd=L>KKP6~FFud58b+s1JXYvD`YGI!KNg!@eEt}tG9gH!KQ>Y}_VXOG6DJYS z*a(u{@E=AkAC{7&(fT^B2cCzAh+O6iZ7?^&rxK~UIs@2=s03X~^ylu)+~{%v`gsXl z5jP`;Fv`Ea2|eiHb_+QZ84)6XQwreW9fH?Sd<-vwf&|Hu{HD)XOq2rQTmZ#Kzc&k% zpypH)P-PLhVI%_wp7vDN8diJu>b>>SjhpQQteiZcy<`1)Fr+7H_YMbr0{K^#4zxeM z7N@pa;|y5Ww9mB_Db}^E6!-&4dFWdoOn-9u`=G8;Cjg^Cw|JTusA%@cv!BN0t9W0a^uEJJ)VrPRMK8H|q-JDR2CbG{mJEaRmK4Tmw7a`&- z2F4j@2qq5X7*xb=*ZhR>c@mN=B$SvC>G0^%v zI!JOQJ_3jLn++z1_*p#_E(7X%J`GU{br_rtviI?OyOw6(+E(}ZR zJ{|BUH$kxUg5`~e-&>Gj@<--S z^o@aYM1e4nM|K-6NgXk|gHUTn+XqNQ2ABM}S1RM+p|A+_H3EtZL*py(#Ag8-g_Nqt zJI@hO&gsD*kwv01Xd_0Ce>1~Q-Vh^;k_FpR%XGJ0B)2 zG?4qG4BHJY%pCth*=wB3^VZ+@ciZb*u54dXtgU;}Q(`9E=LBYc+y>cyZ?Its3!qavvL?!_K zCUrmw6GI_Wy!=2tJqI?M+RdZx%=KL>AcS`L^pQY%aAhcsJm(Nmm)VI)A+yvD{5!&K z#Ggg+C=0ednb|BLWbh~g3}1r-Uty5JiDi%%_b?ZNBwbyT4QAnhi$k27klFMoXrwhZ*}9EvO+ilXpRyV;)0a%N#4wHE^&nLo=029_7*| zLm*+%ag6=(o_%v`mvxXy*cD{h9Rj;B5lridWTfh$wT20B@`pAedZ~H82Lj-No#DP* z=Z5yj7R0=ku@l_DhkYEZtAnPZ8%w#Su~Hhv=SV6M5IUFKT2BCy$3XEu+Za;OoMbHP zaB>b7hpGSse$*f$hKyEPGV5~?BR6(Ldiv7FLlD+TYxAiCF0UN@etshULS;S_WlM9& z54Up@)HW>DY0RQ#22xgl6oA$MSL!{EXq$}Ec&Ygm>E<{oMi1ictoeC{Bvv{H>^=yW3gCUHRZfoCnJ-yP1BQR0WN@3`s%^U-vaKEB=;cM=8^Wi+nIm$8< zu2=@q<8AP5C+^*ru^#gW_FDZXk@{GKEXTlco>mow2GY;eP3@lVJs`P&K=u{)x9S%` zvf+idh_{|$F2TnQKS6$h3oyW4Xkh(?|Iqn5&jsP77%|)c^HGZOX;hA%d!ov}0F?6| zn~+7unW7OCc@P=k8}u9yHI8 zNgn*?mZ~C!h%rY%#fZsio#F(1nE)Eq*e^mY+AR2n3#854Mqr5yQ$$G5t9~^GL>uHe z$%VuV7sN}BFyEZ>+lWlxeq44Zk}o+8zzwDEfrx#ZkgaLSA!oYjrTp$#Ra;CCuqir# zFzYeK<@9G{5Rl+;=o)#Y#0k8WbCHZJHsk)%&vHqyS1#2|%`tC8cqYrv;OHeARgLp= zUu0O)q*J_1@eSV65!2^bG{)Y2ll-ohHh$El$-f1`J9T;uUJ3v^`B`eHpiOtPl$l8? zawO1^rKw&^>goe9c(*+q>vypY(ZRXQ=f1ad{fK+q0Gq_M?|3h&-G%tw(f;0+Sx3jc zO^YYNyE%?n2GY5{evKU;mzIxPH6OSn;b}t86(wS)RGmbA72&KfWz;atHU@jxWIxZ|r|VWBh9Kcd zc0O_v0Hclmx`*0x(9uZSn9S{P&|Vk)GtR>iwg6}*!WK}p{xUx^!rs3NRZky5Z}_c$ zRh7Pd|Hk!)1pK?h6QaCtak)$+L2*1ACk* zb#*R7%_BGw_cnAX5BVZ(!dul1chl)~-~ZUv1K2NW7opvl^#8hT2U&9x1RwWvbSzH= z{B`puHvj9!QM#sOyFNBj6i=hP`}Ud;<}GRQyDbZB^Q^O>?eMt15XDF?K!P{niHT#X zV8|ki7}Qo+*n@9Ga#uAyV*?W-kACbhY!zlOf07lvgn$kU+iAlC}+-^*y%Obj!9L@E=*YF*Py%c64S|d224F z$z=XP+}imRO5v*WWE?3<6vk4~eAObUrvT+KK5qi`5|SU>{1S$8zBF25vs^KxdV8EBOvMFnq(3S*=V8Q4NhefAWX{TULd>(6o3Cd;5nu2jaDdS7xH7Tk)2GhKHxH#;}EwF!?_vqDRkb*a%MMzo)hNQZIuDr;Npp=$;9lWuS3xK~C~4S@S2 zyHx7r)EG@WjC-U)noe7JU>RnpRC1*=DWGI86TBon-;2A!efSW~9Bb4Gg5e!Hb&*Zn z{MuWU+f9=hGUyjAkF`>AA`21~@`aHu9;4@Vl2WBzrx(pyiH%Af2MqR9BHR(%&6aL) zqBDy6uH@CAF2ihoM|=2_{=g%*2Oxa&@`jFJ6JBiF*s2B}TIsv6LtD)MIrs-+Lb_@9 z5be#e*?X^6$I$?0ox;v4@~cjpq8TS>zrUGY>b?&+x!7$bvU4yQdkiHPC2qgJ`fugc za%p%C9yGxbjYl1xz7aFQDnKE+XK*1aG! zN1>i_`xiLch;b<0K=D2sC3DAJnHs0NvXpCU$(T$FR{XXwv^qDsdTnOmy805UucoVL%i-Cu%1T4y3a+Y#b~AIE zgfuT>flhxmjqFGZ8$L3|1mLR{NbUT^l6L8#Bouynm~6TkebcFdMqbJG;Dz)L*P^?B#w)55w^oylJKTrs=v1Utk8y1IqS)!^ zl@e|3ly7QVBs6&%*y-ve@zH@PGfg@kj}*~n3dyJJNl z(f=L+fMr8hi~n2fWsCl&kHXCIKP%;JI{J>=9BBTCiT?&81f)hpQqZVn#8n49S~#|& z1I($S+YzHlJ48@+w?bzm; zt)BV&i3=oC%+u*_`s3>Z_9jX?7CX$4&8J+L0q?g?d51Oo>A&a{3Ir)rFjengE}%=` z{y}#U#lGHFi3%^hKAs#inmPNhbn)ptRL$9l z1%L`Wcm5+|`OF_QKLelVl};QDx$e5;B?Pxsq0(xM<<@Fh zhGGO#B2zTAdet)W6evJm;@9Yf1Iw5gm@XS%kWWDkSBb5DtK+;OoGj%9hkhqF|HgP} z@q4D)V#A&f&fWZR?o*b*KoJ_dZw&R#2jKG-+z6VWy%8|O23tipEW|(BkeR?`#J~l6 zdFqQ=j_GukoaS4eOW4Uc$>!2^vy;OQBG3AnJeW1PaALU+Kaw3Ea-#Oi?<{B<9Ch9| z$TpTJTkxmQ5zbel3|mUd+mWas7 zL$|+kWC#;U@)RCT(p3j2?q+!~V^os>PmzRAl+6jpc)5XjRT15=pt|op9S)Tvk5=$8 z$gF+y)CD-GH{v({prHl$EmH^EBPU-(uFSyfgGQp9D!94|IW*^xK{ldW zaCKwQ;Fd#v>X}zNMaOR^&~we;m#a7MIZk=~>r=N(4yVH;uF`|l8_96cx_WVWMyC-& zzOi{th75A=o$lQ8<@_%#fUq2t-};#ZQDR=E!cRdragxoN0XtFO9S@IyDChKSv>X&{ z>b!0SlcWXWIv0SHdjZ+Y@jb#~=L9wQyMM1hKr&5*DTs0ewck;O7(T5OQJN@C_*+?J z^v7%x813&Ec%$(lvpA>$u5g5LqrJ(n5}}x*4pr4XPI2&1Cf`OWAX5(6VYwB-1O9Sr z&}g@n`f~+BSTKiU8=L-E%UudziBU|IL5G2Me$I;bvT<+~F772yfnu zOt8YTm-26t69m`5954Y=mY8eO(iZLHFSayOTa*RVsso@TP9k}X!AjTCs9c%5oTNCC z8O}GJ{nAjq!Cez5z!|lQa{hu<1Q{&|9~v@Z4p@Je0!y>k;MO{vd*7VL(yM?tON=IS zd=Th)z%A}H71_wkeiP)7BNj~vag0OGINbf(+W|7|db;haBfrUS>`KT+U|`h3LK-o0 z4+hxV%(c}?u5v7W6DV62@=kUOTyB31@=kt@Q7MbIAee$~KxvQqJs}-#{6x$h12M?0 z6QtL)Jox2(;K-Mj(L4ZiAlb?|_K0oPvmyxe^;_P-ajH$%hxNvk6}!dSIq@|d0pED6 zkr3^Ulmp&?UYp)s%R;S6D^{=LJ+!#>ht+CbE*?3ho8 z93S&=ljU{`a8n+C#`0}|{Vfq{`wu*2ooL0bch0wBWO$3rhKpSZ9BzoP2BKdqJb~G| zYox?{n!g0B98@-_(TtxNu?}pQM>KqcH9(XmNJeE5SE>xGzt;=Y?(O{u#-R6~n9|L! zQ^C$~u1|TVJjgU4^}zLKCg2^JOtVVsgR~hi$&6p^fcw1;C{M|A1!Sc+A6n>5MWCH^ z%NP)=p516ga73Afyzc#cqb+XnEVORz*Bm2!#LcBo;3JpJ*L7UXYCtcvrmcm$8x)zO z_czj4!@nyR;02E^Rj`_#mE8$3U7C&fxjdH4K10OB!DsiK;-J5LwCECiw7h8z{EMw? z|DMbF09x;V5Q*3OfBwr`>&W%7ujV~}r~{rLR4NTWoQ9NW?eJ&X3qmN+)voO*j5g>9-4p z>t(hvzOtAQF-njHYpm)vR-| zh_px|B~zxeOvqXy+<@7{VrTReGh(ma$F#A)F~{a@xU}x#yQ|O5$mGW3_sB(_8S-aq0sw zVBoxr>6yQg`TX-STTa)$?>|wWuiqj#KkqeoH=q|9+X5C)?mgK)_O_YhxbgmZW#bXx zao1-g0>)?367j$a?2-$e9uAC1O3^|zL0cen{iZ*?cT=eNoG)O$T5*1EIiTpkx$Jds z{Z5wM+m#I?;5||fXxvOVx8y85T7LkvsM;YDBQEjlPKL@noO zl6at$o}>e@6(_r`klV!Ik@H3xS#Ju2iq--ne8`lxdApVO#m0F!V-d@ld}swAzo&gS z=47nL>VF1fzumu&v5qImwIG3TPp0&<$$I0E6}gBKEq-TGT0zEwOBVTi*CZpj)CUR` zC>97!*KOEAV`naEUirL}<<@es2C-s4EQcjtLXEf|9e3dsj0ud*Kh`k~l80E8L z#@r>+P2D-tFIf;0B@L=}jIjZ7W){O#iO~{=!rWZ?whm6gO|~QxQ&S@56a8(S?uzw} zI&dGE0`{6F{z7DbhQ(#PaB*&ov}f**tj1Wgy!rN!MHUB~!TxF8_>09c2)lw#d-o@z z3X5~X91l|4#%08W9ldC2;1w$0=z$#p$fuksJL7lS5kc4n?fs+=-*PcP3nGav>)A|B z9NMHtc<~aRCxE>GhMPL0CV2OVi_w|H;3&;V>=xBJ(Skx$Pa8Qt6I~hv$Z96KIRzf6 z;Og)Jrx*kT5Mm`FoB#sE_`7g>lO2k`U+y3s{^3?_U zE{vF+kafWu<93Iw*-Q)|E<*B%jTXmEk~HXJq4J1eaR~d~N(W@W@zpz8)lDR~3CfBj zti6NH&sVq|Lmz@&R0;rEkp^}%BY$lilBhw45QP5h(;J9@HbrEYvu}d@<6{6}H@di% z1TEXX0O1RYYy5mI3++KGn!)Q47SbCafgJI>+u#7xj10ulShC-f81e~YDYpZb%&c?; zHD)fPv6V`|L3Mlw*t|OL5{}FUTd9VpcwG-fTU#a_$%bgQT>m)Gi0T}UBF-4jec6t+ z0`DrAR#}N@pT{Bq52N7#l|8U)WY>wrbSM3eXnG~VN0#@1XST1q{wzRI2xz)I9l=Jh z@-mI^nXGgsgze^eu!~Ellpyk+Q{Sd2176#fuPFGRf8cEVWdI!4(4PkOaY+lP&7Zy(wyG9%Ep)0I=MSm^l;)LS2!0%q| zq6Jo5D%sU<%CD`8R>~jkf~ScfwBlOKt8Sh=0>jA#_e@+VEyLxmI~c~G+c>t+8>H21 zCz@W~hs>VpN>^!&R_WdfqOcO_3bkehWK)V`qm{#>Ogg7(x0@wyECO#R4#VyyuCP*x zh9DFtCkhYn)upugz1FWL>*t=&D7dgGmS@jpmUZ2x3NI~|__ARPh6E624!1TWDosI} zu#`Y@%(EsS^XEwjMpA$@XAQ5s#6V(pUpOGu?--KW4uO`W!OU_VrBkB5fa-K6JMNTp zJC>?Hj;yP~m1K#k<5k7RaUNAw4kOJb;f$vW19bw3IpIsy#_b9fXMM=!#U!cXg%b9^ zA1A8FEjvOWIm$z`sCQFHA2)+WHq51N!6Sql07bb*L3)q|s;$ognOqeHNp?E`Cn_LH z04Xyx14SwqYAnHY0)s`B0>2W6A`qpQJA4N6oA(m(QM}%&suoQY;c$8-b`x(P|Jg9M zy$lD$i|PV0HF%M_gStc?C-KfP4PlSy4x$`_uzC5O1}P*7sxS7`;YeXUy#C0UlD$Vr zhzPn2ev>EAO%~PbCXTEK^K-cGhU3{IN}LcuY6p(E^=T~Xd5%ETa@-+-sQ!j4Z>z)Q zI_fm?(Y+b~1)>mNlo2)#ZmsWovm}d`qOcoQFUevUJdkRzIl`O38+DV8Z z6g!4v>G!IE^pYDnF?J4)>ey5%JBo}K6BrULh7lOZj3+Q$De=M38O*GGnt)^OH9~Nu zS15^1juRmwSGs6SCK_kk-N@vkd6of;CK}3sCKDLOa*Ug>d<{~yutzK!PjwVr=@Jva&GmX23rOQ9s2OPoPKgl* z9-7PMO-WQL=mZnIdCK+^W0Ox(t9%hyJwnEiSU32N|1p+py|8D;5kpQQ1#ke4ths>| zkFDSSo(PiSkS_)L;;c@5zvH4z6UBb@ksj{<#=q9x-m*`@Eo@~Ng=jp}a3b7@!1xXX`fDCdJw*{g_JCwF$F)auN- zLU(v3n~w5`q$=`t&c>hf(YVGwJi}HHu?rZi`40W|;vtO&i}Bm0xuLDS2=Jn6zq%** zc2`79xO)6kugaf#c0xSM^MEWr+>CtYi=#@b7mB|WpmZG2nP}vX_Cf}@p8s=!6BsS& zq$g;BSMh?xN+xv#yb*>S7Zr+aj1pOk$rj&S-tewbwK)8Ke}V5}_kiLFFV*q)I|95D zFQH!XhN-x65TL9ScX~abM%`C59BdLp_-$|vQ~d?V{NdK2^Q27MJe{X2;EAS&2@4Rh z*F_9M-JEPE$RQw4=$y?3afvxMD&CvLV`eKTLjJA8CS6}m-$zkR<7CKmUQrTj*)2h*WfP`mFlqpB_2LCo9_QE5Pnz+s zhGcC@mjcbyvE$!4WvaISd_Dag^*fG+)M)l(uT(waR}trhUSQ>VflE=fHoZ{-M_+6q z3|RU#rszghuD^4xbUs|UFU9SyVq5?}>yJz{xANee{-{9`|LE}ERPI?p>*~`%v5A7& zJ6_{!x1e9XD-i=Q`tdH9om{#`VUY`kXb`KO;zp~ccd#$|+-I#ww{}-A`SW**p)5j` zjX<8{0Z;N!I%Nm_G4VPREs)4zb(xOu20-2oQNsDqYU|cd0b^o_87H$&CLEvxw!3Te zNmVUDcI?WoOr#lnbd_7Ki}u=TXAMH+NlSK8)P@lJrLLkn<7JO?lo8* zj!Xv~;gB0}{cUA$Zfk}CY3;|S%c@opRKK|Tyv)8pdre`}O>wwe_F`o_V+;S8cMAH3 z<7kdCF}%1XBmH~G8;qP;ttlwQ zi9*7Zlw1NZB5jrBoXahtB2v%^2ui&r5F3+$i|^lKjS4k`*`5e}_qhIfC`9B-1iH_m z)uyuBivD)oi7MB>-O_ACR@eGWlg&eJ600LBJ{3nUy#{Q(NQM6*hT53hb5>pn{dSTb z#a(Q6g{zxm;@@l#oHcX2GC*+p=$tSaaxN~0fq?@!Ai4zabrMt3w>1@K2)h}41SQPP zd%nWJX}5{X)pv#a`iVjmpkXctXn;Id;?qOUAK_w0ClkykP+sj~%1niia;Tv7*T*Ge z6_~H+UzSoeFIH&E*j>XyB8?^Wsg3$Slg}jO;%}MBKoHJ8B?9ns`({wEW(L9Rf#K^yGGu84G+}(MySDiBuJQdCtkD%bGptb-!&ldTdD+#eCaz zd&vyJjIQq0Z7(-YH1~6IKZmN6GuGv!W(H83COX}7Ju8MA4z2cwNcEKZI_v0bN@Ie0 z05c45V>4z_DhpyAT4m@r%4C+If8NH)zcNL5|r@z19z-!extDUw2b+rKYCQKC^;wGDp{36c0tpsY5&7?kpf)B z)uBb@Cq$q{9a7ztsY-b1s;*m;8AI6or>EX%ohxK?d}0)?ZCYyd==X|Ag|*MD1{W)- zAUp5H{-G?}kW=xyVEtiLt#8iraq$<`*hfVOYR|vHDd2*#yFqTD(0Fs1QD+MK_ojSl zUj3~3(mLt%YODw~_TK5Qv+7KZL4Y3m^2Mk&dWh$6XXSjOGnN!-t;GA1sr{9Kk5S2h zqK1n4Ozz(mSQJh0GS>cLrmD#NfpYkp(!IJ)afGORr+2nh?;=ep4E1@zEDV-;=1^s+ zs`5Btz}khGyv-TA{Fban#pcQLeVGp_gNfeANfUV=KN@ux;CIh1X&;?i6TnYv$rgWT zYV=wE_>wZ^EUzr$+Ta?i$VNEerxV=)vk(vkxU5)70ugt4bhrGyee{I_(WQMFl zdwlZbtr}BniSW77Q=~iK@?H(IvI3Sb2pw6ty>e61LY>58t^e=D_?Bl6OY<{+3Z0+d zDLYH=(`J64U8R62p$0NLH=tRxC7aH{UO47u*4oT0<1g#8S=!PFHFm-jD!09=0v$(n zW^eWwXzEutn?b0f{~fEp8xEpj{LSUKvUe}id}9B@CX%=P8>0MSryPMMURXqwVbWAd zGOpr4-1NyJJc;0qTNWQTO-e@T&nq*z7nAE+PKGGQ%~Kgzw6?cB1>99JnOL7q|;h05Z-=q4d|6@X#S5+T7yr_=F%daSo9$rS57KE8!j*T8#o^^77 zf6D2loO7USdTIj8zv+w`Sa#=m>#6Tw$^Ph)h|t>B+2rMiPoQ$bDPI$+;|4BlLINIq z8(k&RjSWpCDE|l21UTakjn?E9SSGo~l(Jy7Q5MY9cu=p^Y8$#(^L<6tUhA#jbrN%l zL^7a4{&;KrJK-U4#Lx6y|cO1(zlPI5Zypn5B#)D`>jRC%{0C@M8%^R*i?cS-ZkX5r^ zqb<&jHOp>zGA3&zFzncqDu1&j!O>WM>?TIhd~oT?j_y3_JxGMrtTr4DN!Y_rj#V?) zpl^3_f6+p!qo6T}Gph%!b~pV~ndYfO=!3^zxv&2e55@n&_Z?Bd)3IKh+!J8yc=sy!OVi=thC;v7OCq#JX+-!a!oC!z#p4aRpYb_!idFGtI92uE)?LOMsWDQ4~ zPG9=oq>#kQoM+F&Ku7k=sP}DLkq7&&*4D>Tc!wI5ge zp64Xq;CvOj9VQmq-8_`bW4-(>{B;vLK#=!$w5NY?M$q{(YFE#-#M&Nwd9&ninnT9J zE4D3gU;#m1T|f(yOuaGMVysjRk~KaejPdLVw|b{ZPki6^`yWC+CUQD;e!z7PZk-NW zOY-sLZI+Y{ONDZEFxmr-B3bPevJZpSq@TR!nefMKWaQ%Z%COy-xjz+>6{alu&PTRm z0ycy~A$k$paUIt2`7GxlpgQ1H0AB!Q>-^Dy8^3@-@yh-xmwk1wU>K4mQ zW}1ailt?F&9^)e-_DxtL83+^nvVa}Hf}R|P%MfMx{p_N;Ul*Jn+9-wI0RY&Ma!k3$e%`Sa zQRx=EwJ|64*}hj21{6-HF{&cXmbT*7G-EkMh_7;6RGPOF+r!=?LLw#ZuZ*}go5{c2 za7gf1m5x4l(P^Ze{xQ3hcnrY6E=h(-n)fiv_eYQR;4w&XH@3{aQ`qQZh`87bx8qvc z;c(T4{)4d_2W4HaFyPA61UdFv4OLB4tTatc@>q)KfN<3b((HT%M!Vrtzz;O~nEaRs zE(Kf6(V!zYL`p2hIw*3uy-lhW(|XIbVzNcb(h7G(w+V`yuXqq$l^M1gepCVZTPGMQ zMq5<4%TjGLj9_+M2XX+n+=4Ha8(61nv+~%D(hrquFkpD zp0Dt!{m}g)l6*>okku!rw{6Ad^q2BXarLVtW=4HaqZ^hECwE%2vlim8kJwURSRRQj zG+fsP65r=$OeTXdOLsb3tMz2NG^`~wtg5*RcHQbca(k^v%aALJNFD#t#u%NF9qb{p zStfxk^cjO_jP@{|T`zR|r(1*v`JA+>Xv=ATN~j;;ra z_QLy>RS#;sE?o}%Hj?M=D!xRt;9YC*7IufZ2%ymFVO6`xG9mjdTuYX zhF`5$fo5H!xBsQQMvoH5EiHvA$%l<=x=q@=6_V3oN`h^7JyS!>luT>HbQg&}pXZSyC%?)?Q~QhBq}2&yal`j!w>aFU-1^S+S6k~0OcSQ(vzwkB)*w}s8vLlA3vC=~l6R@eaheu*F-bL0T~5ZtP+VtS$;|0 z-5Qd8H#0~qh@o1UF7&q|S4L55c~;IS8{s5Z&&m56$Jrak2y+DgXjEhk)Ef)Gx!!k{V~=(G z&3yB8_cKs`$ot^yc)eH7?b2DV=86KW-FkRm&acb+gx{P2gOs&A!2FPzX<4|0+6i;_ z1A*z=_}9k_tU$Z5xg=pf!>qZa8&IpkfM-`A604(=S8$u;Gy5bP+JGo)h7`2^6Owa{ z-`Mgw%7JOiEp3f(7oXsh%l*4w?zqrYUfBxqp$pN}yWvgG@;;!Xq!01C1}LE(I_i@k zF!OGYN8tQ>bFMp)>OudgH4&xNR;e5{)Rt{G2JbdJD-EB9g0X3fUP0pl(bey*v)wTMnN&wDcNT3@gh0p-#f ziwwDgpCxnuR%;v5=3o?=4G`@2^J968`*UvYU}4t#M8LT5qaWie2t|Wi;+qwpl2xVY`{7U_}+_pI>7CSbx$Dv+ZG&< zwZJ5#=^}h!c)1Y$EtCAW&VzL};RS1iTs>NSZ`W2-p*6bxtQ7WT2Y3oT877mJthjL! zDgY&q9k5hD@fnDe5z;%6LwsHOQ9RZ`o6)kB;ArBDa|+Rg8y&=(qpVtN0UGX=$~FZZF(Aa;Ch6t4I3=2XKjRgyg9HO38QTuAE zRCPb?vbE|&TY8EP4Upy7o+xQ3Bf^HUnV-zI6LM2vMCptSO2y>L>itEn%NuMXAQ|^B zYpru+k?sH zoxV~8l3Ttb-$N02MI=-t#^?E1U&=J?pb`bopwPE1A&d?d9l)-)dF-yx$tkj~M=pHH z;c+dcS~PLRII3Xm;>sX*qTAT=upzu|3135{s@p`4PL}3&jM%MqQw8c&hLx&&TUXPi zdR5Dl&xAX!NHR?XN4}?{1JE^5W)-a52vOcNCW4>aJYb-x;X1Up`8~!JZ%sM8 z3L-AnN2p2^$JgqPj`EmMcaaR#N29iOEd@&*_%`j<3*fJ|rhPnyEJ8lw&I#ksfHkZ^ zb@f>TGE8w!=78DD%=w_W{epL(jZ(Ix#FbO&XmXJ(YwzhRRjZWScL1SoWubia z7al^X|2dKMOW(!?4&&hEI7TZ|k725g5g79roGRWrll=7NC0>mR(<_4J%jNgc+E2gP z-yXPrh5_buqeX~twxK8i?qXsh)k*=Xaxm&(S0d`d+X|{wYF<@W;rKzTDO?NB_}Vv4 znmei@HTWIH=gd;S;ImJZv@}E*%m#X4jZ?6k`|2Uk>&}?zdr58P3Rh+f$~d4dy8}+p zM!CODTM3sKSL;#g%{8#@br-JYXas*`OwT0ZcmTxD3zrSV{y#zIKqD!6hem~yR1(=r zQIk(d+$Sov*->%v8r>4<2?UF3`A|?#cvAST&m4u(krNFrL`O0P(#x?X`$mZ*Pa=cU@Vy;Qq9Y<6SC-ckXHU=^n>`)7?%opaM z9qIjB@>tIs4dZmUkO6|>WKt`;{So{O`WVu-51fSt=R0`mlps3N?02{!(y$I#FQY3yCg^Tc0J zY$&4?pAb*x);_vIew^?B{;n%s8D!hZ5@yrO5_ZTH_7WP(yFR<%SK>wSiJ>v^)k?BV zOcfGk>$LB{=5m?EKxdUJtJQtOiJ~YR>w*;tG2EoCSIms-)#$7wF!a|B&6tix6Y!{K z;PA9z&NBq1;3=}CW8Q)@&ADkR*S@*!nnjj{i=?h2P^DmN+05nmz_bpbEqCZvC{C|@ z<0^F!UxE>FDA*@3VUktqYtk>CGcA)8ATEe9`l$)}&dNGp?eml11JvpDA8N^60SV#S z-o9gz-H#ODgLV&13<9CiDnAq@k^GS(~voWgP=_ygWyTUXkjO&KN(&RN&#*7=WUJE{gYfAQk9L%3`IHZ^XCYm#7h3-W%GD!Z8n%i+ofivT4u1!4Ubd?U>HclRF6}p! z+Q$(~A<;=xu$Pg$!IF5H&OP|Un2kr^pK$AxH0z;qN<*Jf*sQudYm5L`%?-7R8t>9Y z&M!$W$L(3xIlBsEKTd_p?Eni$&}m_({^YWWCL;K%5}n?o8CjfWg$-BwL>ie;wV|?! z=I%P9dMw^pqT%M~nKA^jO6rd}BGU`|deRpgp#EKb* zXpDzQH{OHCGTuYh`~)n4{;MaoesrXVJiz+hH&XrN+nhh-qo!jP&=u7GYE$O@1ao}b z0ukOM(!DRz`J@{DS?O)YO6LV?Ie|}3S>uW*Cr=?Rc^eErV)Aasi9%-RR7=T`5HZHh zo^?I$`3CXIIQz-K-5Tvc#~Qk0p04e<1-VQt#*c9xX#r;g#% zQdy1|V>WJ0qON+nH;sPEE_a2}CAL3 zVO!<_x6S;o^vYo;wZKu%@8#wrcm{mmz8gb2xmwtwpz1hnfncUvu3E7CYHTz)o2cp=+Fbd*p(}e+vlQr-7E6ki;DXxS)ojmm1pw0 z_FQxL*$uro!Z)|Nf?Vj0Ps(?G z{*zMmQ@8we`c2`U7A?AI#;YfcLfu*bgn%*EqYygHcL4M`dkU*IBO57aQ>LJ{$ zKj=7kMPr}yzH8kuC!j>*@`MT7QHOz{(M5mCZAU`bySM}Ks!(Xei-%k&+j@4ch4#LD zwMDd~es`ss;%Dho?DImq3If_QIpK3Y_+z>(zQ-dbjJMMz|tnyExks( z@EGQsY@HfY@(W|YbL{7_9*34tI0YpX!Jz)^O@(9FkS`?>fkY1qN#_jwdO_C97S|al zm8Zb&X_NkM_p?yG-eyY6fh2Hi1)NFv5+;AKvALCF4pXhfU=h`SF0d}>P*=sz5suqhO1>6LJnL+ z%Uh3aIIDEC`iH-c+I&Ol%jb>&wmZla&sYUELb)}V&S%MO_u`KY5vc+lXgK@XBwgw|E1x zz_4LUyFlUls+imL8U&^z($^(VrIP)+QqRCc++1S{G}Y50PX@YQkcax@Zkx5pcxM`# zTisBXDi3|Ob5#?}_a09KQH&V2;e@v3n;U%a`Wey=527N$qM}iT(zoYFKXEU3o(@>` z3nhAO5PmX{BHfeSOq$4RpF&bGo_PX}S*q9@p3nEUp)$Dm#}>;is2YDdReRS{RC{S= z5upBX%bexzg#JL^lGdcz5YR-YC&m|&uil~% zz!$F$QK;Vh)m_b~P)#?qP3Xo>T@Widdc6@3s>`bu!{e`PW{XkoQCq_+hfxmvtk$>W zJZ1T2yMj1vQs;EO5%xwQs^Facy9F?aYP4}hoiV}Yb^LGK z^1=kyQf=vN<%MuDQT3IA6G8$Mb-4}Awfc1)NH>Pe`KW<{!DCc4++6@4U8=8AaFzP2 zDr*FkbGbz>=>3NxUUkjWhgV%^0i#qAys+k9RRlw-e?Ag};H-mO;O8MIwOsGY>CG)v z8zMUvX^QU)(5}&ifwH!SE%$KbQD$`elXj1O`i&t$%9C}SXP(vb%9 zsTWT}%nz-;pd;6yOj3q}c z@wp=Cs<<9gtHbMLhNj~U-6QPMJ2%AnNLQ#p%BW#<0UaKaW_8eL=}lGh$4iQOA?@$&!VVb zZaJ1}pLn%^OBNo3QdR$>P{-z0N6PWR!VNNHtRV@KlIMeCM-5#lXKM>01H}c6JE;F3 zbVL^Jp5g%!b@zNP*f2;ex<*@v!qP*;_E?G80Bh0^$R_<(B)IwCC~Ba7@6Cp!XsBm%o|5;*CZ|$Z-S>Z*g+avkU|NhqmJ5w~zdgFmYRP*y z=!3w?%st1&qF`H?2*E!qQ~Q6nblZkGfun8p=ermd8;e7Uf8&fL#J$k}fs|A~safIL zezPE2{1`~(sC)h)(e`Bb@0QJcC@AE@#l^|;zxQmaa!%vcxe|MO@UK4d<2Ddm8D-~f z>b~{v3OI%#$1C{2p{z)-jXLl{|F0qzrWwS zG`v;Ro_#=4U zvElHd>GjY*0q8Gu5SPF8RCxSTrZH`BK-i$Wl?r=dK5Ux|`?KiP>p|mEM~A`1MBd?B zBmZWO9cJFc`Gu>`AWrCeK0aNj#cQoz6)O4hkRA~mycpz%(Wy%E1QNJyV~W2 z-#X_BuJ6fnelBC4;t#^62n{Q<58JR4QzVqT0(M{npq&eH{W(#is@bG?({GSECfSzD zoV8h8Y?U7Je*9k5{d!=h-u1qyvB&N3aT-)hFL{-A@JI!5||&ek$SupIF!aa=t5^jZ>;D)oa*lb z7Jo-u@zjY2t-R^7iaAXl&otz^>h#z$3P+)A5Bfrp9vLal!2Ng%qV$!)Pp>@-k5QdT>DxQrLvE7X=?nN2VU8zu=PC@J+6 zQHv%0T8j<8Ey+9kX7^6u-t<=HF1-A)Sk^w;V@+MrM5(I$w@uKhw^ezuyu9JG$W$q? zN&gKa0wP4n+f8}5`SsRaD11#UeQuEE3vc_nSC4`ez8mR7(7Cob<#xL!nc0%WOzE~E zcD;@>47>jWP0(EMuLxB$W8^I$*tpBHm2=PUfgWBqOl$7Dk%~2OOm|Err*bI>Ee1#(uiCf z$J;Qh7E)ybbOp1dz#Eydf(7j#B2qyeDp9d4m_V7RnL+4CJ#U~noa!A) zdxS9wQ&zmCifM9B#&-!rV&p}UBlgcGMl_<(Be+CneBv^O+kG8H;wq6{Ij2%@7hY)N zFJK>D#&w!7(Kih!_+}0RwmRMk<4(q&GC(E*-+)Gv&=jx3z_vXOFnkGPXU;!x#ES_w z-!ml7Ov6{S-fl$11;f}xcWg_Fv}DB2d zhW5qq&4daz_R;wN;i5n`N4Qj>YNc{|NSI4OLxFy|JO1uNL0dhowbW)L$jxrU1fCeh zJ1Lb2?Hp`L*5xJPtj~_RpNUdPaH?hA#$&LwZfooPk_>|gxabFm@eYo6hPsmxj5A8| zr0@1+@CKn+=!Z{iv#<R^sZKOSAhN@to$^FP+kJVx+^DPBv=XNhJ)CR51AFz3_I z0^N2&Ik#^=f+Yzq-$H7|V)Q)@7d3ey{g_8D<5;tx!R6ptuEKBIm*Qyc@4-gGBmc&Y#$pJR2B8r*IygkBb?L9 z=rodT%UdBk_tTFE@IJApCH&QCT!%j1^>q+Jq%&pfB6*f7Kf%Yqh$jXUE?sD5a}G*d)=fKEsue=}j250! zl+SR94t^siC9jl!?5!NfTaYyCS*BE~X&)>dJRU9OTJ09g*OvOBouMSslrlx2b_1YD zsLdf1;uX>r;vuAnayrXZjSJ_mhN^)-n?6v!4*c$OhgOrjr4(t3m248t17B#SpmCg> zC7EqG)Q+~UtdF*)S(j5ATmMQQ1EFjuHtP>`O5rXv{-?Xpz_&r)nT0Om?Q0)7be#gt zq-{o8vRrSMkGPQusU!*eU`v2(X(MvI)10X7m?#PVREw&G(n2#q=McsqbG^?kb6py8 z=A^B-C+1U`>YilSCnHI=V9Pr7hCh;9Kf7w2k0R9d_GUn(`CIKfIyOjZ|tK8--!>zfueOAur z9Tl!%bEZ^)flW@1>hD@*?>Oy&lh%?k6NpH^VgEdh?8tG~P|GY}19A%3MnxKxH8P9q zC31?`*n;6m6G_ES>3(X_nSg{qBp%e^Q|E&<4+38Yge;9th|#2AwmYThW3 zW6Hr698L=ogH3s{5$FUsnKr&#KFer+Q# zFkAe3XfZjzIBV8AEG{MzogY%*^)VdvDSXJ|&6H9`x4L+g@@lS$9HCtLI>lU=j`Jy8 zwiPL%;LFXV4j{TrLqwRdI%R388)a*)dRe3gUS=&{X6!DXpIu+5;T?a*-X%L{D>&M% z4MH6jhHsUYpv5LCP_!GcW^2aa*qQ} z>=fG~<`c#+2icM&Hzr+({jG*h0zlFN@*}L2EzHQAFfAaU*n@zw)f{oq39mvD3oFlAt9t7IiP=6kM6oK4q zK(ceHt`6X0e{3QYvwPOLkfIhw2z%_S)ko z!ZZXwr2n#iw1w2rH0Q>&joj!KBHSqZev4rr@+JBmtz|vBDnPsnZc-{i!ZDae@u`*X znZ)t{Z9P0rXiIPm>hs|VULZSrslI!4s8!#mLkYkAhv6`C+0zMdH>A>2FZ;TS(Q7YDX^R9+!hbGMfg;%;Td1 z-)kw$UV4`PZk66cc{~;KDS*Qo{TPYf#|xr{A&Cg#A@P>Y<5;#3Y<4Zak;M!u?k}Vh zxsYhULW&G3^h=La*3W%gQ-llIH}@c5Eq6>|*2~)-+JiJQn|haKMm$xMnht8BlX_Ru zrwHOwE3|`0bE!Aydb-TahW?splccXZER7w5v6p|KD~y}1uQMzSnK}@KF5B{WvF!U4 z(>0Mk=?_bpxiZVcf7&CnqOUpVoBj0Z2*~))pB>Xi7RpB~!T;dR-1Vx~g#%OUcH|WC zoakTsM}w!vM=Q7O=fn682@28js(Mc%9ZQCOS(j{IFv5G72_df^2Tu{S-k?adW?iiy zWS7Hv@XT|rM_hW)-wh1S;!<|nY9j{*L+T+0^1Ikr$*fyr)~48s2eUDVJ7U9`2vSNeXcV+CiP zZM*jB1MlFAsAB3wM4Bo6c+we?pE2Z#A>~;>r^?Ta#paII;;)vXWaM{%2m{s<-y)Lo4*VH1n9t*p$we zn%SgS!PjglhaIdZ*vYkcIvm^j7jz+qf?Bn`Rz9&u|g-B^0q4+SHlPF6*?Gx}Xw zv5fKc{J$7sdF>s)1&JlFFVKFJjn_;X!j)%8{ak$f1hd(KL;aM@~Mjr^A(vD}Lm7FtAR5;=2TBgj?z#@X+2@SDC_VfGbA!*wFtY zm$xWzp|2#3gU&fHLbLx%DqE+|L78k+R_eP+_}|Pj9@|H(OCm1i5+6r>VkeB`AIC|B zE|rCjx(B7W9oyOd7JO439umseJRpvD5UVz99l2C^JPYkhg+7qGr81KQ;McOci!y4a zEewc@?YiJ4XMalk*1{y-?6n!24%>-op9!t%>Z1XB<}yX5LcU~$eZD$IuB=D$rCG(i zmATBPkNHJ&q=vMjbfh<%8%Gv(4>zMWs%gOowV=D&AI5jpZMGWK;D&sDH&+nXt(UpF zc|-PkPh^DYvxjM?W?@Ge4@Cb59}+CS230a_t9mSl+~-9UW%d9{sNSugM1-mq%5`Vv{x z#g-R(-;VY&ULbg>Tr3!(1Z=sQt%}usZIp7j0-x|tXpxpmg9zpk*LSTXF zsaB{G-Y)Ij$rh;o-z=59()6s53ULwIU!$uY?#ZTaz)b@{mNR;P0vDd23GaoF2mb3N z^$WA&JiwX1!5_yoVH*XpTuPuVsg5bfRwcs#lEx6|8BYp!h zBy+vy6-b#6P*d8TUKi&Z`F_ZjFrLRNn%K)g%lrT>w^7%&s0 zJnHc6t&MMWg9d*)2kpp1I4jRQphw6c{M_=B5~Zko(_4M1O_-2R*xciG1f;OSINgh~ zRC``yfAA)J{>#;V?hAVp5~C~MNk5QZr|Q0K=)7{frHtE`0YzuCvxK>CId`3@-jfl9 ze(m?P-9K|rwYKJ%Sbev8f6*H`PNC!a$L>kVby#PiJ~tm zSe#`1c)mcTG6xCmQCaA)jF%@^4#6MetD#<#ugy^5Pnh8}%5s<<@w6rEp$A|wy^Oi| z^WXF!W2K-MW9oZ~&lL|iZa!3;$kiJ9Ia-Hd&Jt*A2_H>aOXa}%_}8p(rw!ITr zCY+(_aV83lj}BefFT*}3v=^TV%DLV0Ldsrb#=2^L zK`qybbVhuiuw3=jifWrm_j#ap&&lCutmq7>l=F;dm==4{Am@qq8QPucpdr3cM7;Odr4;5(c7fyzJx z+}23gF4_ID@n{St7J+ zq^^Bsv#veOX4SsNi2=qtcZ!ZpJI%+kP*>a#=JxdmOc5aNcOJqwa4Z9c8NPv0zb#|7bX5(c@m_He0m+g{-n(*YeG>sZe9U z;CtJw3JnKH6&xT{OkZ`w)i8d>i+nf$zfky))%aF6)qH)D!7H1#%tBNgwGb~!c_6Wa z-hTsYVooHTJuDHiZ51l?FOpKyBgg_W{k#~&p!n>o9&xi#DADs@#j6bHjUr13B_NUu zk^eA09a!H^#lK*AoG_Yla zqK-k&_2r7!h*xw9_q@`AGu4*3k~g`$VgbwEt))U%W4OmJ0p7oc0-Z#w3xh~zV_cjH zUBnLzF7fjeO3B-Txp!pu%f-&hapQ{qB~zgRbMBuUMUT7>m+SYnw~HO%{9x|g-DUO9 zhJNSE-)pEIFJBLjRl@EMA+Ptp61OkAQZm`SAJz$yGHRv5V|+0v9Yb+`Pd2VEk25z9 zam0F^*a@GU5+yEch=f5|ha<$*ik%Y86DoJ`s(mz^0YFnSFSdOA2;*HXBk%qFai*q% z_;T^-Oj+M&j>RI}>9xynk5ellUeP(L*1W%2V=+Dk_?!H9bzL zpH2=W?`&|a4IWzZ76<57``kKR+pxz;ehay!^h|8FlbSV!q(* zy#=Qu7o9Bkry^#SNa^fUP<<~R+Ux_^UnjriC_J;V7t4p8hxc`RXSoc&wA-hJNc%^k zq7+gt4rt~K$ZT?`stj38!Z4gdF^H!*wP_&i$ZyycFtdp{$|L@fV6OtI{Y0Tt z*bO(o`g4b5dYPuY_bUoPRGUoBEV)e{!^3eFFwlE|yDuM~nlIl`XmYuc%ktmKN;cA1!tY%XRud75xPjQf09A95u0gRAwWw$R}e_cD+aO8!ymH8}JGo>73*#LiEj-T2#4e|mo$Hx!7AXyY7z@yhNb+xBC=XV% z_-zdLJgp1%gdi)Vn4*P(cZD2yBQ8O$E~g$oX|qkSE}vDVOkWH?Q@4vg@$^gMYb|T0 zy)ffaE3iDB+c0jbGT4@liJ#=)s`^N(p%U&?9$gV?B&PXiolc(6BPN_(kx(L(O224@)vaZ*6c^%B1Ypmds)6b8w((->FWy12wH1kDjnweis6) zo28_l`P^3vL-t_4RYN#8Hd#WA6{Q@ba4%kUzB2Zu^5V&0oE7j=WEf@YlKE}dw|OIS zaqk(?!caa{GSk^8t3qm3$Cwyabx$Sl&v85l83Rh8A+QNL9rvH7u|8A)6&K$Z3C zKLYkyH3YM>mc>_GQo`pFZT!s0VQtAyDN5CrPIWy;r9fl%%}m%XyragRIVU{BN)90; z9liipDq2>z-a1LZw3XDnQF<(+TAq5WJ@Qz7*mPlEL9;X|T5sRAn6duEv4ncA*jDRq zc`nU*nW=&aXcx^HXR06yf?);vSWdW1S@tk%IXw{5`I;c?kvQ4FaRP}Jcri&-m#%Pl zr+SZ{St;12iH1HY)Q#C{BO%*{8cO5ay0r6)lEdPF#uXY$dP2Ff9#PPy!5K>Rdl*I1 zu6E?);!{la*DcpK9OM5;A4Uu${lsXiM5>MsF%D;@0QGy5@K#`rxB6+W3qzW{N|tu_ z2NLQmPrMq!7y^;Bb}%fus=UQyDwYrl>%OZwm)17;R~;l+id{6+qGB3s>2_pX5|G7C zY(Nw%f)cMt$3zoLd+POp>k7vm1weohPR^5ll#e#i7{#ECbH@l%E1iY-1x-+;_vBfI zBV3Vr0-Nd61khB*i%CSp4%O5KhA=}8on1~Ws_SU^N6UPc#8TAJRfE+I4UELA*ni>f z#^R`AaEdZFs^ZRG*wCg}-@y=u#Upk0$(t zDNGH!j-ws;q#(~ObOZbn=FWP^+{9jJ%uRb)=}UXH6yUuflPO67#*tzhM^%pxc^eO2 zaVnvpkCiVtiI*v#w!%@1yNXm0!-Z1|PJK)YslPIYkN!hnkuj$?!v-sYol=r3!X^lO zr~!0MV+oN^=wIxV*Rj)zQh8)iT|4y3cn$k&-Y15&SETZ1_;Fl1!XDQ3@FlR%)hD~@ zE&|&Dcp-}VpC?E+S&!0B?T>g6Evd{U4vj)tk9g!P&6y><+W{oL90=X%I{nsyIqaR# zSbG||m`;*9$Nw=@$lTcIyT*jNz2jk|kwQ8KQTsP(uW69TlBC`kbzA%_H9!WN_>aK~ zfDG32=nH5XO1U6|^=ty16D_LM6>{NO>mil#kw{PlEkXJj>6Z+@{}CdI>{%>6T=aR4 z0(`Fk7WuoGuxEHjj@cx8Z`_X3z?Ma^XNDY)<0pbDr`OViEKMZ8TQ?ZtYKTlLJpIF~ zUAlsd!7b1acHoMyILtV&93idOh4_(Lw>;3c>LAe2Rrz~w0CU4o3_gE51&fDK5WW6_ z#=J{iBjQaU%+bWuV0F!2iyKI6#{wmMy9Zu#HZ;W|-nFOAe+?p;!Kwd}%vM;gfT7#l z<9|s8M)(}JOY|%9P!S@N3XSohg;yG(%o~3r)LnpD0_~-h4MhKJ|}=u@FNoO z9VH&k=n~9nfJ2oVa~ssy=fEJq1pVR`X>Vex>)-WhnwsZ^Z2hNmKx&mpjf^Oxcn2mi77ktb*OuXUcq7BSKT8?D4t0f{W zgu9T;J^Ls&OfuI0hcwYaq)8K4@g*uhp&vfGnpolo*trv?pvMo(+zA8-F}u)wX?!FR z6(MIH5bYI)x4vle{PAX4OZ@`O1WzxsmNGu8B*$gTfasD2?>>hp((+KtQmrby+)F!H z-k#NNM+$T+)qiijfKlut4b2X#JH$&VQ&cKo#T$x0iBw;y6k_p4W-XG)98gv&9;v@D z&h*5OY>X<%RZfZqO(_W<(+XS67dNXu%Xr+_lEmz>M$j4?5ECq*YFPVmW^9Q=j#Owb z1|y~juH(|;U#3dGHKK9_8{0#(BZ^C^Nz&(N()oNS{^iefbn8;`NPHF=KA^lzsXhHwIc zmurCLJ$gj@%WLi0>w);JybX-ZuV1(l=oEG0_0nu)42iAAd^gSFUh%(E<}%hP5~YBz zB{(oLi{#icb}9^suJ~-y&Irqy9nkVQp!c6d(EATX3Ivh!J$YGv80I%U;lxp-Mo{I? z(TE~Xu5GBIMA{*UVhCt&}%uvWpXHlx-JisY6&IbNm$O?pbru=rhB4>^Bm+ zqc&)bCDb2A)F%P|a_hn@O;w2m@PD}a#^B7trQ6uHZQHhO8xv#VzG#6e2fPGbDUCsU|$A zRKz}3Mq{TFEI~K9dGsNofwy6jqN->S5St-zIR6)mqCzAnfZ#o`Q;18TV7$VAaI_## z>IX;RtFx?9EmiY~X-g-O*sKDHt#V7Ceon#(Ar2Uz+)V_OhtJk~w|#dl*y{9ZS3?We z6)5Av8G-UE{*-}LCXD?vC4tjhtN$mHJithMpbt%!7| zZeE%hP2FanxFuvW8FkZ0n$YG@7c4E_Uu}+& z#h+c2Gd@uV($#r51vB8q{b-uSZpx3YstjufJnvapMyu<{ei6i;fcr@xl@qN z>q8>o)mo+T{u@4rCJ=Y-*RHE+*Xt9#ms_hgAVTH)3Cz;n$t8v$J6#`B8QQ1H!9d@_ zuf%x+8Je@hg6B>`{6b^Uu{uDl>L~;Fh3Pb>zB?)-GER!ZiQIzcML(Y6^w|V?8J9fx>+?@59RjM{g9kki|z)VG{1%dT}(u@sz+NmhkzBkc~)zlNdk zNQD#c3{=c{(|PEfG~ZqNJ@4Qx-+;X=K5a|?uojz&4_4|_-9s$`zo58Ba;oq|;k^%5 z_|IuLue(P2uCB-b@#D0QDw2S9lr?k{P?uPB+p%C8wgE zU@t1?tEKPj?;W*1Zy;|3GpNsCkL z@&--*cWzzQD-FM2XqQ^&v2zJ2L{9Pc)eZ0Cu=j^mC(Mx>piwh_9r8q}>@7(LS$Vp1 zcYKOaz$3k4Ipjtk&Bx;7G~yhdkFjetTaC{x6sqq{?>8l}M$T;$Oos}s%Cf*e$B)ha zeP8dE$heT*mR8T$7ikZo__nJp0Czl4dYfh4!=ILVN!((71e3Cl={sbSFUBAwVxMZS zeXb}<9D+HmF_bRfqavq$(mAXyJ=Lf^k91yA7dpF8i#bchZQ3 zx$|cmD#(qi(20+TTSS50RiGB+<)&RLI=<1o^`EX~n1BEQ|mvzW77CnY`z2QGnS zk@a@??05dQQ%91}Fys$^rv!_M0|{rMUo}m5Z)71{t`A4ZsnZeuJD^Y}rb%$I82zFS z(Lv!FK~sKgfFYvw5zCGQAl0Wi^Xgy^WL(9^v(6Yt{$ilKw;Z}?d_1*&e|ZSrB_F-A z-d_^(Ou0g@%=M-ES>rFX(}2L`Y%i%2*K<$05O+U}rIi$&)>p1CPHAQ4!9Z|?H+$%uU-19`TluA4cQ=) z>;7K$*yZ>>O1OL!AQ{Oo)LDl{i9N7zJN~JosPemtAKz)fCnQSec&Ixa~ z;f;_6JBC9iRIjhc;@-(RsMa)UDyYi&&11itabdB>Z$a)I(z#e3zfkVQD-V@4k>A79 zX8ettJwbwRFF<+q+@#1%+@~C6qbb-e4WWzn4=@zbgc>`~0OW3}NOi8pxJpgvt;?3W zZXU6el>^NT#-5z{;4N9Cw61@!Ot7LgP3<2w0ssM-3Y7NY+~^i_H9;*AnR7G+nE8>f z+&-%{%(E!wp6E7ZYwc17N3jdrKWrd9zrP4{mufuns<6e1E9k4F){6%ra~+TVR0N+x zrm>l)5l9VG0z#!S9M_B{mR{QpH40ziBu&QJDTQ-7w0NfG>wrFM`JuBaYonanP&PRk z>-(h-92*>nvNn6x37T+M(xuia|3U!<0LFQ-bm?XuFA(8|%&a+8lN+!%9gSs9E-O7F zE7?m)o4EeiaH|B|tNuZ0%F@J!4`{H0K~8@YT0SpN0rp&syxzFS>X|WO&z3h(+bZus z{4HwM^!UtgK#LWQvgzq{f9#HD5y46uVjbUWO>r!6-+b@guJh}cc;7Enc7RdN#3Sp+ zPkaf_?Ibts9iLhqhC|LSh5qCi=^pu-VM6F2LZ;&*Qu3NyMWutqshxhI20yYuwzr(F z!7CVa0Kj395!xx!umOs7Q!-kJxBHz_r|nq7iVuh{(w3kV0kpxWD5s`2Mv32mGkDU^ zeu9*(*-LyY0lnrCv{A2!?#o9Ao*@fwm90{-dnZ60wdfyR$$w?(n?{3^I6eQqCJrD1 zzJY8&pvTqDZbXa2*b-`~BqId|)`&viw-(ea0SM99djt@bX_6Pwl1cl7Rug@adWYYN zhef4E%Yo@{ZQZSZjdD&Ky8W}Cj@P1z@H}S8<)VynWul78FWXzh3$}k+Jf_n1-LM1i zFllEE*cIVBiHIqc^45B^x-xsnM!LM^sg3VoyYWOps9$0)lbcO=_Abr3i7qb9`zZBx zT(HXH7os%yZNHTU8m5#+S~i>@st`V`gK$jkIwitQifYKe z5zV3JB~$XgfiY7EvwDBD1XFBD$Rd&5YH$VUM zy;WB@=0*SMpl|l}_NU+5mo;wA7oM*ShjR7?z(K)*z~1FYUHtu>PoeugT3=7U?i-I# zyEynec*6qYey4xC#_v7EE;@!`i;ytOZyNi!_^{@Ae4iA-5o3R%S$^Ct6>0)0 zX9IWxkyGG3u{Zq!)fXmQQ4o*Nm#OO7vdW3m`xL8Nf1<_wW5}Yr{uv-B-~~>#g-?hN z5P@x`pLduMAwx@@o=-EK(1iY&u*^fAb}8I5rif(Aj)mA}#cz)Yf#y8diNZ#ynt4&rek_B&G6<*$Nj?v>U_=Ao*RdDX7ol_QtAnpqS!NmHH^h3fn$8(JV4g zyKMzKGW4f!SR_sVE|(aoQ%1>?{M)80}C2UI3%a3l-5Qm2?{8C<&`Ae z$y3HYk#<%uOT+JDTEPGje@MG*U$_X9%Yauqcu| z$v=-E8UI*muKVPkP&?ApihVQN24LThb`r=MupQ>m2jFpEkmrKyosezofB#rc@)^V2 z0&=IDj?=fSjD6WC3c)fP4he`#fG$wLAN$f`OM3|97a#)_rKOm*dZJ?Lp{b!SLD?)M ze^bAJuxDFBWcTyo?!niC7t#9xjGU9m*d^|HB(Cp&rBwyl39rHOk7&86CUN41)#!%R zAl@)8uRPQJvp8W#3f*w+U>M-V%a=qiLI^Qc$ZVEFJQ%L9JxUY%eMCnf#>Cq#zIQ>SaiRsBaqepL=sRmZ8%hi=@Rl6iFlmA)IzV3&$RXASD~J{ch_a-{pOrLy ztx5A7!kbE{Psy(J2UUyUi;>OZ;U=B~aOQiLe0ePp{?!nibO+XZ9oJc^KI`S&S?8aWXSF(lK$|2* zLN^wK9^~gh=Jc!hCraLA$U<%VZd?z5u{LnAxXX!aD9UM(PF#hc8+k=O(oD4j6)xaR zKC39o={y-sgTLY~Fh6SgrTn>Sxvp9>qhAn_#uzkntCOI~zDk>bBc~9cRp?*X?ZcWH zPT_VuNd&_?E;V}M8D~dO`*n1!X z@{{1Z@5Q*$j#gU>dNUtDo+b6?+C=W(P~A1M&Pt`4CrJqPjT{z2x$vR-@k4NcUlu*B z9IijX$;#{8dBO)YKwn8~M(Y`+?6mzAH;iHg?x5Ex#o3c(VmG`%+RElR@%^i+9WI-E z5Y6#SZo^z}1?>aLL%?Nbyw%d465Zmi(}>QngZk<*UC>5d*jfxJ$u|#u5Hr_#eTxU` ze%leY0S{%|S~sOywe#cb0;`f(bSC~m5p>>iqJz#tH|`1GkgCNVwe?b|*CB57Qb^Dg=Ts*2i*LMMk>7((a!U>cT5)6kk?4^gFX4KqV0DUMJZ$ z`GyypA6&9*?*$hh+-zBhy_};Tz21&bF?l8QFXju!d*qioM9y4A zjdpqHc(5(%w{uD8js!hfNFNFgV80BEs9edHcXw{ z2mj@2j9z7j6*)*B_=A?^YS^rE$l2uB`do>*g_wgvjrm0UI#9Xwp)2~A<_T9|-{Wp&9X-XGh{GXt{>>v7gf04O zo&=_Ix}$XQ$;~oSY|<2hjjo_MqB=86x%&s)u5(9Hi~Q;xN>~c+i#BY!ddMb8BEz4L za0|}>Im1CUE1&QynWIQ-il|wLB>lE5jX^$R+yxuzHhfC%#xPqb&Aw%8!-6`aq3;zJjYGbgq;&(hoV!DE2N>nnGse!53XL}OoC7WLtVzN?8$uGnge zT)*!8CeEErNA-1te548VKmkeKgWl^dZx2}|ny0!ioPIFMM`CUz!4x}Yvr)D%rHg_o z3Q6mNPQLk0BFlXz>QpLID8oRL6lo6Fno+v0CbzngQs`f6Hva`3u8X5#U@khxghWxf z7qDQtc2Cbkqw*g1gf08RgIhAe&LFM}V2r95izQLU#jv$1x6C~ zVfPgWsH|b&O!1ZU5BoI*2UMfuT~07KgRS{sp?8fD{q0{lMn;(>l(I346?rzzFUr`1?>eAX<4x40LoF)58IK+@G4VpuKnYa@p+1Y zn}AciK(uCiV=kMD7b3;=AMXZrnTx2|<4nh#-+*f<5GB**(CxwA1^9tpG@oi$V(Z=g zk_30NemvQ-@GaOIaJ|kbF z_;20d9O2T{rSsV;dRwDDOHXYJ&tyI@;p`(fMVVWft-?Af;fFz$gFjC_1ff==!O9Rx z;dA$xRH{`8B;0bzI1`ILrd&HH${4M$Lur~RR~6SQ(yHh5fdMn;@~J55olyC|`Yym! zkhQpMR5JDTw#@Idj~KkS@Sc)1tnNY%l~9Cv!fc z=K1t+>C({aC+t2Q&6hR=c_Fs6C)UR_tabU%k&~8Ors|` zqmU}1{>xQL;Yq$6uCrFq?iFY4DxZ)Q$XPO+i;FsCiAb=L@#xD`S*=v4wWqF17c z#OgJp|KU92(I0;hI+a0_)BHq^g>L=&{_rDDGO#Z#NHD#N%%ZXXgGe4DU1XI(RAUTe z^AE9gc^#mW6t_G)WCu7akHn0X#G{7MPI8LM7{?8{(xnHHlPIXsmjjiYu z8*g?oE`&O-Qk*(M=1m4=C^#+p#n?cOZO>4dVL(a7xPNN6tQt@8)Pg-9MVok$sh7c{ z6`PkfKh8#}Uz7|XAGcc60n`NBV!`Z3>>_DavasI?{kZ5WuxIYPRPy0sV20k)v&&vT zttZhc1pviiDS>qWTysNYoJjD&+YRy#)B!j&Dm=Tx*D*nG)*4N;)nI{ph3_z!9RAse z{l`W1}b z`QO0k*5`rnd9|)>U3om9yn-ySQ^AF$^9TH2i$y$$jWE*uivz%=Cf?xh*4{lnQ5SFA zotr?^NYt`K`4A%t7-K&TZUr_vZ_mt{G2q_ozUceV`1$1Z#hoNx%)CRxiIW|DTP@XtG~| zfJz40W-=$=SD_b`vhblnp_o;W+Vy7qm+(QERbM#MUVjG$l?yKwD|Rw}c=z{QlYM5Iw8-V&-*0=xtNBA67`IFYwbDmEy#qWrC+B77ls8oG< zE*bB!F}~`SQ58Yz#Rh@{QeaK)T<1xN3^4nQ*P_%=!M#TuHe-z$DaCQc!fQ4@F6MXr z@laMf*mqj?FCCE3kAk%Q1e&>nOPEyXUwSmHW)$4Ojmye0o>OJ|N^pDeBmf{F=-?kUP6Q zbE6%%H(OJEqd95Jwqm#Qau{D?{c$`dWz!mmf8Xl1Tw#>=|Nwa2U~OBH^NQIzti z8whUhMCEkc?VB4FD5Tk#VLyHd4JL{~bnKz}?{1HimC4|5)p*r(a+}|EC2-0!SY}o} zU0@I(j%i<)UP_8;sz#Yw=EekVk-}K~h=8kB0-Xv17S12C1Q&{UrU`!%oDz1Fjays4 z-WIZ_$s5rSl&HuSs1Q)sRvZjbk#Ru9)Wq*vj`N3v`wR1Me3J0L^9KH6UCg@0y^^(LuC;-=P?d4S6pUItGzWsjP9XI@h-)4M90uj5G@!Ti?n%;W*zX&1*Qa&86p0 zEZ<@}UvEQxjF_9bNC6$MyX^OhnHH-zY_cB{s50;dVK1bD5_n7)c)_=ayejjI=dTft zO+jgz7dMXPg+xkU`&Z-P5p*4PZ-^sqm0HrTmU5;s4o#i2fO2-ZPs+6VDHvL ztFBv6!Iz~pi$J!!{Fya5gXz{({dVt}JVI|_x23=?&vPUNB0l3v{7_UPI1|Q3h&$^e zBmPS7{WJT&kumM*N1@|NyE^C(-E4~k$4lU_mlM%k~CVjF%x96EHKQ>fKgDb zkyEO%5&%&o{Id3DPp!WYl4T2`uHdRN&}#{EY>zIa#Sd!+up)xz^@r;L3P3CBU-I{{ zu7#9)KRYaxjF9Rt1G`c%CiIZ>YZqoe>4E%=Ao`+_Z45CDL~UR2{5g2KY~lc0uR$lD zB6hJB66RmvT4@vn`E%By02BIrwQ~-i+yqu(8Qz6hYesQ5<{o=kG!8AtA zQ=gAHY(x}6vtyM9vbQu3zY-}kJl*kq4fHT}l{6a^C!^sw8cW8fKlGuO@aj7HuYCa5 z^0KAE9l`G)=7TeSt>Oh_9!*KKejU-!8=T)aclc)8ylUf^&&gPG@F6>8wXnygn7~^l z!T^tZ6xHht{7MdjW4>hbKb0={H(-zsAY3#47|`n3<+5@Tq{a*7=cV57q{dJ?;%rDU ze({UYVF8FWb*G4-C8Gjxp~k5mP97p$wl^wVL3qg}owqk+TKuEYD5fv<=PB2{{u-Xa zAwj_zpWVXj6T@W>cb}xm?v7<`R8I|0?*N<>f7{UJ4NP*sm%1%XxW~4!<(o%{MxA(3 z9>vBZEHRuN6!$sGWeJbPggf1w^EDjpD5aal$w=_>A^M*ON97lc65CEyDs16x*8kMFty6L9P*Rnw9|4G7 zqvD}9&{3t&g0VS*BTE5e!y%z~-R^6m0XcWPz-RimLR(JV5*dY=#QB;2#^C#1MzC~0 z3=-!U`V+6wnIqa4e&x%NTx^a_L9~cR7_UI64m0v(gYMYRV=S+fmHYf?@kZHX?eO81 zcgPpaYd}897>50j7s+_pxeCaSxJI=Si+o46pH^_x^=@;A2^TFh>WhnV&!I`HC0oKR zjURt%N>+sxRJbxF&X&IzNJN`hYH4`Kz?@^P<)0{qDxDiJht@5@o<{jEG19nb)9;qD zCtG<_-+zrd|CU~8Pd@CYcK3b1hTD{tPK|ZF;5bj}d8VC($;+jD^-KbS!U5A2BFXhL z1&8MTSia>4n}^;=f!lyShk?kB?2e|8+Cnp~>B3d2ewOkoZMBoYH{Ha-68YNl5i=cJ zYH40_KMS)KS~dS-dy4ZUBez1l3;2aE>#J4*sXqy^&v0fm#xiu9{>Z^L>J&(kiZN*E z+h|U>U=M%(6{*gMMSyydP69f|{L+=wZW+bRaE3O$X%%buPfOOZShp%`sGer%ld zF-d0~F4}ykT=n@AyGj>GlzK%#^VpI1YwiC1HRdhj6(I^I+Wii_0d_MzodJG^`JJZ9 zf<@bdMH;xuemKLpfOscx-Yz*pv{<^KzFWT#(R%2ir-GU{J=(qsVKZ^2w#bSU0$vm>OmToTLq$2V(()Fv!geJll&h zKdgO#B-z(V)Zi<{U=1zh`LEJEGYLsMATm@&lLX6=uYqMeQq6YnNZA178Mi03LF|G{ zVNWX!v@nSJNl1{L?*brb(-KA%D9Eoj5N8!~4|5X>?XZg{E1@;6ZYx&3Va?H}^Dmzi zVem1lbRG)Y`!zl;6|X!F+hyC00a2F)lfYiqxlek}xTiU|tyD-;O`cm)S=t^VrKQ+I19=Gfrmj zSts}NcgR`iBazyx-<*FGhB--`r%w$9>t?_i=7LFw)%*jCM*S=g4&7>l;~Nc!B)bZz zYIsSU^{-{2W_keBqcADC>^Vd*J{!*j7Bi*HnTjHaJHnMIbK2Hz2Bm&^4~fe1+Oszu zrRiXYE~Ep^y;ZAP7GkYZN6WMVfi6b^FUEau(pbj4zJ&Xpq9sAu{Ip|2p%EAE`rfz zG{tr)9JFWb8}@Y|+)nwZ5Q%PAP+9R^T=gM^Zx~`&e(@X<#^1b(nIjk7K=XAQop!^4 zVgJE1 zG!bu-Tl_Ul|Znn4CcZXnQ_b_+)fWduU`+jhZAY zA!=1}#Xc82qJDwDOK?`t8#^~n;gUP7!t`oWY@}SytnYXOyIe^gF&fRfB&>yWW~-|; zQ@y8mZeN&2-=xxicS&=mA~NLbd%uG8hQP68ITdVck z`4epvmI#wdMU`}C%xVIKwxt8yh0rPR~@zn8mZgC;&WV_kR<> z`BP}?iVML=1jOT+JZ!FH>AQL$Ux!2GZt11<$rWL32CegAS&dra3;5xe8MVjZDgd!8 z>R*ofzeA`<&g7I!kbghjkt=g@tFhv9JPT&qjcNs*$o*pt_{&v5ZfHTS(Da(1CGEp z4h@glk&Vuom;!Q`96B^?aTSxN()Brr((oyw4qJv1epxR`4X?lMz1^g!tUkZ5!-jq5 zN*np9R9L0)4VCzKjodM-05FQe_}6Pj?G;}D1f^|l7nv-%eiDbetWe;sP$Bd1_f=B6 z1mw6JU$ITT?mnuz?XnB@uUPQxk)a$V_v~jT5ib10hwf=wPnL?Jz#3AO%u#6esXaCW zs_fZb*3&jen%`+Zrkr-m@o*%?BZ@atzkikTUsHy{xWm=6H|b!A7y;;e7w!&lp(i%& ze|`)To0_2vf`r4GKj*R(7xfOhMbuQduEMrKx&&}7bbk84W*Yt zgh*}nWAlJbZ%K7q6ad&bH6F$h1MH#+j;=^e7^iRK4kw2RH+UId?)x=MlccUMfXdMa zP-*K%8^{4_S=1H5TuW1H5&zb*A~%#2*Eq%ZJbJp|4Kh?XnM%K|u+&y!tChywmKyzg^<8uv-kqNVKmHN8KEa$+?^)G6s91?Ek#LsmyBTthRcg&*E z`Fcj>LV_Rwq`^T5l=FX~OM0;n%qC7hI2~D*0+li+3KelGtHF@1O&VaBw}L2?3Lm(K zMjJjOomjjy12ZEbtp8~-Zc!Fm;SfZeayrM9@_i;3kUJP&^ zdvN{@tjWUMsR>UxfDSH;~z6gx_dJs7Q@pJB1ZQ zZi({(J~#vm&ywN2h1frS=)x!H4i};5`1dx{<05-QM2;_QZBagu`0S#Cd)7^tCY1a1 zDQp2ISP_TIasY>1HS=*y8W`u!)tdHV#eAAr+*6>%XyS6o`eFB(L-SBQFADbk?`%?j zwfm+Q)a_fbRNZ{!)6AAysn>FDy+r#F8e9lK$dC`hM#D223OcHMi|*QiKpjm}PCPJ% ziu~Vcrq?{{Inq%wyXC0CyR~8ncLwc#X-Eiz?#J4^RkA~9K;tJ+1d63fE%`85_lI;s zK~I8#Y-&PPFU$+g{=DL--eRivbaX$HSca2ST7oGCdZ#u1G)pykvfe4bxl@}|=KZ{$ACJ((a#Z;P(>#j($g~jiSmt@N zD6%}%$`j--!gbX@B>x>xd=37G4#CRI_WvtWZvH=RBK}8#YGiCFH^YI16EKJl3g-(MCMDF-U!m}&XSJK;->MY~h=^{n;xb>sCZ8TwsPmb_2> zh?b1*?XGSaldHq^5s&uGUw7}TkNx^?PYi(1%%7=vm%)!_`}W060q6N6!}`YyX}ibo z(JybWJ#T@pgquIFbOAXu&?^+Y{I56sx>?zJdO6vdox4Ai4aC*Qy@w#spUH-*|1l&n zYHi96r{SNg652rl2V=RXw6E|3uR8#a z)`y#yGaLrNOLn<2F;vL?_#|8AguTm4YX(JvZIdY4vnund8L5d<943SvmPF>i2T?|Q z^9O|EWWSJB3)4HeKe`crup@CG!u6*G6hOF1re~gCtnSEQkVF3@hvETX2055=@A#n! zWf5@D>X5$V$WR{+_TJBIJXRRHA?yJA()lv^+b4!kZ_BbnQ(JlBUtX_I==X%y7Sio$ z)PlDnq!5Zkey5UQphp4qjsiZ4CU5QnzQhzRH66B5-L;zY9`S+5wzt*13rXaqGB99> z7l(XV&P9UYsQ#8S3Y-`4J`vMI)gK|J-~tmdh?!f60(@WlL`?Ge2tI&AX=bg3 z>Yls~vD!}mAJgwlKjRzz07sNk9vBtc8e8g7 z$>^RRc+Qkjbxv0p1+7vqggh?_3L>fEAbf1P+NegHQEqsHEV+y$Vgr$0cJ~|uZJLjG z!MLR=fm|JH;!wAe?;Yu5u`nJBBmQ z4!HWhQ$c|* z8l5{ZEJw7ax2In)OakC)CQ%8{1OT07BK(|qUF4@g$0C}nqerpLDTu0N7jT9xh5-1C zHzNfF>S0L!-y)A_NGe56BILWptGX*%?H9d!)VX?I^qx8n7h^v$DXo~WOrSs-8E98Cs)Tk?!;?et$ezQKxYyK;jau8%{twTRZ2e( z*#Q5t1s4(WhX9azK9KNlsY6ZJ4Z7@e{uRFtRtQI_nUC{_RoeDpLmZ9twD5*Wd38J-oI^1N!`cTKsJ z{~&7U?uiYW)GAl~rLF4On)BcAq!bNx8rmvFYaf76Io|kseD#`AE46N1jLgJZ!l$`* zZM;3`(Q{VC zG*$|RsYM%j)Up3zh*F1+gh#^_lEAEs2KOjifjb@sS+m@AlBn3i?6-9-%ZhAgkXwhN z(|-ZNRM?Rc>DKlp8Bl(dZEj`ywI~q>4OMZv*p3KKstF|M;avzDZC4(K7~nA# zl0q1TyRN?ifA3n|(SglUn5G2nBf)zR&0NJhQYBG(?(+1cdd$RkkVR`=_%+p&(SaU1 z*|!h$kM%;<*-}Hc>pcgl<|kw)cB=36_cQ?3xkBxPqjbRuU`Eya^`(5h$)6$1#oM)f zwj&0m%y)Y4X3UK+Wvlr%rbgrLpiF~#GlO^0VRk=$>AQ7MCoQR$J@YijB{(P&#}`5? zR7-6r^wyFngYY&fSpR%-G@QuTNXZcx+(U}^Q31PC7oK(PfWdHq2f_zOsiJ0u4`WdoNJN|BnSuVbKxhO`?6sT!_RI+2%__A{*LYo z-MOI5t_a1Tv$*K4N7X7)ila*(j{qPPnP)a>_i)`G3AnvA(Z=EyjKX5HXC@j}ep0^# zDDNGCXGcx2pmqgQE$zS)+oj@F*t1}j7E!dr@PT{XX-_Fj%M-sAfF)8MrOjuv}XWz z!K3VrX5E?eGQuJx0A5Vw?D)@SVrQ5`O?MV?OSzRjB$tT~G{j$$oW&Z)M2HRvB8$h; z1FfcVxoPls`a?sVur@_!$?%qQc@QwXO zD@1G*OMOvE@K)BM6|{Ei7weU7t*?nDzH7S;3xN`?fV^XFnB~Y4V+?g|MP6le`+rX@JEgb$XO8z52D!D9YcU8fCk#v zpN2$TOyakbUnZPhQ%%%ZO>m`3{$ygz0nBZ~oqiP|<>*Q#7awIhS7V7@AUAj-EmtOi zd!{Lqw{K>Fd%nHxY4#nrMri9@fKG_-fK&7jgbj1+(RHTaZSK<#kM(1|w0OH2H)%7b zsA*&Yj@R+c`_;H|VTVobvV4tjrg!aggzStYWz&hCIMVH+%Ux2STIQ{;{95W~FW$~2 z+0qez;Kk}{lSU@2K|L|b!m`=}EqzI%-sT)2T;O?vCs)wAZ1_8wJqV5o=1lIZU3$dr z2VV{ga7rrfj1d=gUTcVcFG97Ig`ZmA&OZQzUPzoBQ~m=msx{>h!Wut~#|{$|@eLg< zxzL(d7nviX|8K#Kb17!TFq^S_{ZbcAVF#9b>X;fGVv08&-Js>wQmr!H`d{6jYrgWo z{$ehzRn@1#!qXYnE)$SaIABKNq`bkTP&b1N=*uKc(92e|Gv<^H#rW=h(CV+4Rsg&^ zX3U8_qm_CTG%MrAYv-awI`B=NgIMPq`mM2sg)V1TL*B|;Jb@Q3?K~NrqzCUZ{?*S4 zpi##7E@)sLXKDLSn&=yxk&K$(*D`|%M^5O&RW=^?W`g;U;c`7fFkQ`d_cJx<+U}cyOP9%1Y5=!JR zhe(yrxkQZ+HPv7t+VxUf%NST_Op^XqXABWjZn+JN-22M{!uM=>7I|HR) zJtV|N`m1dR#TydTKT#7!RVv6b3K9gnmV!ZS2bvpgWH438$Oh+!8oD&V z%%2jtT-;7EWh(7ZJxd(^hwn!R!*AObh8|1abwYd*4K= zH7l#3r=elp!Dq9fPe2$=td@O|Q;GZCM(G*7XihNv^1=0Zy9+W4?u;qtaJXzy=H-*; zEYr=e=)UBqU-A&PcAXcg8{XZCP&*)nP}}_CO_aHGR$VbhzqoxJP7A;S%+2BP|3Rv5fr(6NL0_qcFsl;yQCx?n+* zAEXy*L^)nvtL!2{xj%| zDmer@H^A(x*(}|a_-PPZmcR2^dQ$Hv$}HE*jccZ?t4g-8ZFS)Qla~}#8ziPwAKl0a zfVxK@V(p%Dq_?gMxpzKX19oO_Lhsg4eir*0AQhPdvk%mU=EAIK(3|0(f=_=tD3UvM zENex8md~$tWdj^9vy^Z*5o(TG=6GyOxJW@4hN=(o$=ceKCLA|B!T9=?{o3!XDkl&v z5@$4yna<$JHxn=*g{>;aT~<(Di1T#!E&d8@#qhX`h|YDQYV5mS20bZN^5%h;*~E~h zp)P1OvMDQW&ydj?lJ_N+8Z^M!aN_xSSPvB=XZ zFa;PZ3kOrm2?+=RfQ;!@_|F7c)~)3HD0!!>>GmPH_Udy00D0Kdo$!o=exVZQR{5U`V0>Rfvn8RJD4b{m_m>0T z2Xbu*&pMrKJpsMrm&Nl%nwWV*KVnPFE6 zGDj-^BpkAo&^TFtjz|KUeJTH0|FQrmV!T-2@C;?2Uh9h|KOCm_B9jL$tf;>HTmOfw z-{)s$Y{D~ETz5`)E74ZAF@{@c+LH(kEUS|Li?1Rv0AU8a(aQI=H}zC-^r1C%g7|I^ z{Y!$OxR=bIXyj&||7{GvMFtF&VDywPoyD#@7|Gv;Nnt+Q{y-%JJRn5a(0pqsW*GkIrx{$;W31ma))R=spQ8Y|^f{?R4nhl2zq zNcQhAR)|fVU;lajz(M^IGu4_MgR0bNSOFBQM6OX zoNgK-d6e(QH`M-eb6<&@$e$O?H=B+iS;=Se4(xmYT_aM~svHk`R|rf+bh1l#QR8zG z@GkD${4R0{s=17m+1*wX?9BBVV(!9{!6NWiu?FpvQ^M0(%Y!$P7>$h#fePMq0VVea z?aJe~zn3lunoT|bp^7`mz?kS8zUPTy6L9E(yWk?ewj<;0BwZNpUleb%UYM%U06YfR zOlwC%wJT@1q6WU#hedKR1%ktsbt2X{KqpW?5@Oc*;vwiACYEVES3mS>J+&!nU7xJ| z9-5$!BFo8hZ+QfjfA#fDaoO!)Al$l!Fa(}%OIEMe+qU$eYF00$sSQ$ORLc{Yx)QMx z_6lK9S`Je*uv#Q0a09cbhXB0RB?1pz;1Qbnc+aE!!x5a}Td4_r$nj`r3ECJMV2MLC zsnSMic^~3zC{aY_5`)UzRHlAu7g#-93SS9%Pi_(Yye^BR*`S?QQpW1`-0#*xn8X>k zU*a|_v!C6gWR-@*YCA1G*5=`AkVHW`KF&-!^0`2EcpAze_JFLtclwA1uTxYYP_Lld zg{mN^=&p-sl$jEX0@-4V+ebPd(9X-EYs@i}HCh80=VQg(^N63knSugmEY50eE0HHd zO{{H_ceB&;n^w0z>~&TKD=@h>s%))_-E`85bokr^ww`AlBk;blqZ8pa3 z4{oD=Hu`C;I@b7ydQgXrGRbjSE8I%mE@`PwCW+^&!CYh9bHVXn!5te7;P$(h=Sgj7 zlE+UdfS<+Mf{S4sv24cI2|<>NrTm=)JJWH2LioXT5LW6w@Gc4|vUB-_zHM?amd|tr zkQH)>O>F$)>kl{1N<-t_7Li8^B89$E^UX%Jh^dtG$UYs5K~c88r_HcT{s)1g^P>*8Psl&T%Pee~oRQLeiG zp|aA(i+{3we-n+x`LJqksvP6|AFjSBJd>d7Hkeow+qP}nwrx9aY}>YN+nG#k+ji#U z`@eH>&VN_kebHS{@2Xw3YVEa7v8T6ct3fnw0xpIf>7^pSe`+K~EbQ@YK;{xN0W))cDsBWl7i8-1h=5JBG*3e^7geiDhiN<;hS# zqFS5xzZvJcd;KU}b|~#$~jxx2^H8Q0Z9V`uYXS_QnjO2e*|&sD7vMTvcp(hje50 z9pV|%w|X`OV}?x^W>0M~*iJLC_QuFn+%8QKEmvuO_SPqRJE zdDpe+g6u>&hPR2*?2!-yc3O{*f(T!C#o!@{DXP-f{Iv_w&Y+!U)XV!OY*PYO;*=cZ z*}6$chk5J+INR8`S@AnwkC4&3OFhn&R0;1sG5z2)?y5csM)CsDQBtYxLZjpCWD{X6&7bV zc^kB}H&<~6{=c8xBWU-%URn0{{(!ArW%&4i{wYlpk7IsXDH;Om#IBBcu4 z?pIC2$p!dU2K9-vOFYrBNAwCZ#UMQ_Lg#^Rjm(V$+#gCs1G!F)C0isb$n=zC1_XKC z_l&JJxJ)xR%NqQ|a`tC2v*Oti8XXNhX5#Hbu!?H1O5LJbR_WYQG9ZWpR#)gqa^iLn zewW-u=HxD16Rn>R!OzqyQD0hE5!BjUB8I|xO<{H_&YZ?S_Zjwv=bx!PJ2xnvu#d(> zk733EB6|^TXg7l*RX7;j4MyIJJ-VuB(CrZ270Vbp6#Z!oq!7tVeXHF%wN;=2+GDW8 zFszSZ5m**OiX2FBrhFkVk>QPJW1&V?jB4p(>ujXW6@=E97N&UsbS+bl*O5}lSQhzI zdlDe))$8)yi|kxI^;q+NNRml{PuR$-`R@eLPSImiM)#)rCG4h=!wM-m4vAwt+9GJH^U z{Jn1|tE;xk%rRMWVF}dKC7Gto)J%1udmtmUt^Z*dya{H6!4WE1yf`dsQ^2Z znhMDtRx2?} zTbo{f(%4FafevXJ?G9%;2)!GFZw~@XAH}Mwi&?XLFA*$AckH0v8XKeV+p}-H>Nh!kny$iAHU2&?^(N zd0RStv}=J7eXd+4x${sNEgm#guyEd;Oc`eH+ZsboU*Fj`XN$QxT*xCl-={nv8l53b z>;MxXi*t)5cXP)ht*M#H@a8(w-!F`KIg;aHdHNH+7HT=#%;Us_MVji|I?U@pQ%TAv zufNgS;-E1E3E}p)Ribis4YZCXu!^M7jy;V1 zywx?!vql}ho40?!LoR+JkgN!F*KAgbCG75bBbAhPd?V2xun5sTz*{QYDt*62IN zmu?Wu^DgV0RsQJ0m49+`vBBvMGUfJpGPg{}t=&h;aeJFJa7it z#k0J#xuif)+?4IoF&wn;eVe3hsTN-S5F|6g7I6EJU~!8GPDjc;4a)wCFb8X6rpq>z zSQJsziL;1~ImBBSTaZa07 z7uBsWA>O@WBTxspbvur=m5oRJ!q?b!Z8sk;C9NH8=GkV}tbaCOvngp<&zay^h5*11 z+|6_U-Pb@}{T%l)b8!4GHu{W?w)4g)yx&XozahRy!E+LpmqG2)>u7sP-@nZjN2N(@ zz6vH>%Mr9663xtfecwPDdZ{{kB$4OYat9)0Zg;>@BOn?I5aLrNe!MxPmtpwuv56*J zT@iJw`VeC;l1_k^mw}@PVV_&Schg=#I@!a=$iU&9bKsA5EFf=q3LjuHRz`lw|KVMG zun#~)pEl+Dge4kCz5CwA-)S28-o88f-X5@?<#5*-p{sj&;rP=L{X-zHRgejl3zon3 zzn&p6&{tz1{}9R>d|b%->gf|he=)XqVfU*L1K`AUaK8t|{4-1Yx4y#-iq;3Xy0Hxk zfmwl)(ts42e6!$GD_Wbu@gqC1K$$}lx#LJJGUXu%?RQVM7-Yz=&#lU?Pnh>kwtWXP zi3vNT^w$mw#GI}a>8CRX#E38u$RBa}F!&;cz@p|KMIOjw)|1L$w8uj9J#%Qp8$t7l z;U%%$zklpA!n!?-8QAhf24(|J+28YWdbkZQcX_YJ-N{eNrneljpcqWZ?=M<4cfn)n zo3U^rUU^rP0J-~(aWArBxGkjt5u2;+EUrm3>>w6W&B{lHBvs|~? zxrTQ{IuJjK=xAz4m-z_ih|SbaA#h?njdJ25Ug^%f2jEtVnCHeuds)xo(ZXoB; z^>=JGi&f9oqJ5girZBnczh56rcBtrS~S7FFk-9 zXUAOVZv$MkiiH8wR|N&&^GwUQ>4B^Asod|>V_DO;*I)S*xUf(B)wpY7W>rl-E1Y}M zeqTosiFdN#eLQSPGlVf9FYhRe$cj&o2O-Q_=GV#VEjLf#Kw=>x?tqia7i6bqe+G~A zu}9=)QO({7mh=V^S|=^ua(|`8L_OKrdvg$6tY8)E#9-z!mbN`W7O9`Q&QKPxG{CL# zcZkD+p<>2ET~n5=y1XR2f^a5uM)Hkal~1&%3#Zbc8^@9J`*l;tEnZ zd+CZQcs zhoFC0UsU#1G;bxqE#{=z^6|lCA(^81f|HQl46=}-I?;j^Bk7kZwETePNfv{Sx~)ti zRMC=b9JFbchBL^ZR_VkmN)kaHlk8Kwe@T$1%5N?vqj>j-(65@yg+g14wm6k^w~SQ5 zH|y?hJm=aNkBCrdS5P)mW!n*D*~A5BwefQ&=HaNT zu!f2mhM4q!_d(@s0y#qtqmIMXUtJvI`WAy_ulw=_QE`%M%N1Xla*5kLnew*xcm9b& zG=KuFMZ#bJ%>YI+>I_;5C&1Q4n6hfAJSitBL0H%u5cL%KLuN~Ju6oSCeur&LzuYc9%LnJ!|ru&yONbIDlGA%REl9? z^M=WsisJ|)Si-OOHys)&5 zNKW?c-3p-j{riVUS28NHaDtv`QMD?(#&(x=wpy>??jKz-*-6fGKB&edJ}SrOs<5q@ zIbtL`O$Yu-#BO7|W){~q+=Tv(GhHbwPihhdOsDbX$N!F=rbHG}55m4$IK|zv{>ElM z2DTY>FaIr}!}IzJ!4Ck$?-~+D z?v7uUE}6nJel+7VGW~lW?}~L}VduE5%|>z~r;<&Da)2XxehhnaW*tTinpwV6q&f2> zgdo!?Ai7-bAtRIym!=_no)mTfL|B#|Fx;9b%^~feu93)Z+CqFaE)pB>jVbcz6l~vH z2&t#ukSP8aGEw+YFa^^sQj6PJ!R2}36Xx<3JJa?X6NgaFr3-Zauc)fxX}MAi32ikn z#{D{MDuz?+A=zl(H8gzLz)nHB zpX86s_)8hjW5an`TnzdpxXaPX8P#+!#}Je5Xg&in1823AY|fG9p)y#iXfG!^Ix+FiFyouV~WnE8qc1(YzX7<7l# znHk;>W|7pi20GKK3<4aw1ZL~Kmx-#AOpk(CEY2gpuV_#PE_eZxPd zQV|2FK{M{X`azbjR~ZrX1OXIpK8oT0$n6HDSrUr&-l(CuZNIyamqKis0VZ~hYAUTo zEvkqlLu}zW6V$|KBBazxA>Dnuxd>tAw47M=GhXgWp%@;S)!jl;8Y+|Z+k^az@WC+z zOU=NSa%%hzn~7RqLd!b<;IW<{UuYpOL%54ANhr?>btMZ0t@$Wq;CbYwYK~7~)4qS; zoX+{~P7=R@4uWhZssh@$0kQ@c4wP1K>`TACbHT3!a1;9Bfv^v+AAvn1^&|TW6ZvLK ztITO|J~4$>8$knlfL^-53Yo1MvKCt5KuOa$dhLNh_hC9u6-HbwTf_<^Be6sy#>YRO zcr-H#g;LP18!JGf#>)|kBp(7hh!D>k!A04zLNBpr{mAl86{ zb0|%DFck-?h30fQ2HBbsK{}U#Uw!g0}m;9tS1( zyM=f9-}_73u0y*6p1{}!A9aW0lAxBI>ir#{qQt6RrnJF-VElQEt`Lasz>qJ56A}4h zH=b?$a1eFmM=+*SKut6B9R=oSBo(Vl!EX9J69gS-S;b1q#*9Oav36ZC*tTp+V8Byt z@yfxf1EDQ*OA?M`|#gOIp4GPl3RkVxNRx7Ed62}#i=?**Q+UtLiI@- zu^2}^d9h7Y4~+F_zL;8kbYno!#z!yYtlN2QMvA3tSvPL zdU@HH;kG@N1skMhzOT7*_wyC>2Uos51E!x|HrTcM+`Lk;3izbQsy-7XHXx;U>&;fN zkM}7kf!n=YT$@s$u4#fuQBBWy=_Ct>j!)2a_BxvZVaPONa}MIO`>0QJefeaE-m94t zvfaZ7JI7UkbgHivWg42D{Y*u$bw5*2?o}$3PU=GM3-~6A6kU<1eX0ueBa>HEL^%s* zS?rk>u{?(TTFVJYv4utF^ADb_#DFT{75)ns(??yD@$+Dvor6WQDk7Eg+g7@Dc%=J` z%;KJq_Vluvkk#zUhLBbN#lJQif+-PYE%N(Eo$Q8ylQ}522ohrznSf|1l9cfTaioW8 zmba&0BwVsH>YHswW3lsF;zaFv`G;O{^(hva{+MIbp>Q_rj6=eSJ~JJ?Jz!Ytr))IT+p^o}5l%5`#`cvk)YM7twwmn@Cs@;1~RA`BBKLSL6cB` zx=M1NO13Rib&47x!YFp(3+N48lC^t@CB;>?euX+c%s4?3=^Fr>?2?eFwhD)iVb;)& zVcbpTe8?5BbhBMB{lsJNL#UP~lCBIr>gs^D&(gqLJgXZ%{rbBhZujVH1AcGWHh4|L zf_vg)OIchJyLo#!H+?-dI(>rIV6rd(q(CnqR{)&0{z9zDP^LVSO!8B&t`HoZwZ~@m z3h!vSp$5$DT2y0bqrJZuZ!8p~Yo@ukKNkHk|D+b=LrWubtMhxk5Dxm1_pJo%X9OAt z^w1OQ8nj`uj^%w}{O8vEG1zl2q)R}LvP#!4TLxIIwk(GlB$tcTWu#`?Hvo2W{)+L2 zLg4kLGpEqHa}McgOFxSm_Z1j7*YGDt01fk(Tlf;SO^;Ep zayO)V@1G$-U->g6=qIx)0S)w%{)?$*Ey||*3HMD@P9!v|YY)|tHt{CW_mqFB8U>Xi z;)vM4$dsg51;^{}x;8Frzn=%T7(uu~6Cb+EyR%c!Wggm^%;H|ZI;T7m6cA~@yl^BM ztA#9&MAf{K3Oh8`)lq10DD;S>jBA?N$;WT!@o42@N=m=8QMRkrHM2XZWC!gEHvftc zNe+E*AtUagN49!F%l_S?y!X`N4PjJmDx)B1dG%MZUWYp5qDJ1$%8(`fnYsUt2qyk@ zU)CTc0fq5QLdp&#J5W{U(~gT=z5@gfBZvQIk4>DUgTq3@Nx;cOz(AlxFUH6~z{&F8 zCK~}8=YLx)1Z@BJF)IOEQUb3>lD>d!(uyEl+RJYcsvkb~|IfxA!O?ZzV7uR9{zmW^ z4_b_{4BWZo$ZbIBnqZavJD!tWcJ*@@iAdg9oan-IUDvk-CK0G#NTb-1RYjZtb7|DD z19SRGC0FFhAiFj)@}`;zz97nB49JaJw(RtK{rG&gM9u}k_KH*y#4J}mOdJ4wBjfCr zFIb}K>DNx5(!ZR&3az=m=T5*EGC%>kI|hy(UiWY0tz5jATe-Q}I}W2ArP`NneqMvX za^~3`p{3Yp%)B#W>@xtc+9MT9F5d26@! zZXbCIN!9{)A7>MU%?`pVn@9j!k-%XeRD_xV7sP=bms5m6%SaU-_!&W*XNjN-i`02B z;kc+4SLp{WMBm{SFnxm>!#obS{^daf@FuO$DZ4TNJZznKc53b2_Kz@KsX1`V=Kkx7 zizX~`XQ$baaaPbT&FR3p-WeGz&VLmia6wO>tPI5Tf~RLOFKfs^y~}bLyTfH5QH8m81C!YVLcrhaYaZ=CDOmC;3tl_PJZd(qWr)x_ zD%PTC$xg4chPNS{tC@DLuwo^PHMa^SJ|jvLtJBNh0kXV@fF%LI1lxQ=erg6JWtSqp zU$AN+d~OriLL`pR8YHa*<_qP9Nk(4A zsu6?&XPikicG}ZrwH|xJnLN&#!h>Fdi~O+C4xe|ahrs%Bo?@4ecJ~0oAk2)7xFQ-z z#CEGBVk=)!3BZ6`*Wz8`@hoK?ZqXAx1S}|NgV@%9m|Ox2Y2n}>ROZ_SPCzDl z4Yq^T<2;9RcWN3ulDb>5yQhLXb1&`pkF{HmqQ^(hC>y}r8`+}m5-smTu-Iq!j9s{G z@K;>g_!34*vz_eNDP9PXUN4s)>8 zMyF6Hv{ri#JRvIKvQ!LlpAeTvow7-qenn7kfk#{EeaBz`z$YS2J z32o0E_L{A7bL3Jv0lqS1c#rIN3EporHgai6rAYutq;TSxH$#QwD}t0yJ5q#G6x>#p z$n~0qh&4(pS2`#|2gcW;qTp|OU1-m^SG-hg1NdKi>D189gdEuK{w1BS5y1MT+#abt zmaP4c9oGnkQF~n`{#NA#YiHPL6+x(N*bcJSe{AH$>Y;7|hWd=y>=CZt$@`Bp=d#c? zGCKjd{!_~y3q~J1!VBOC8zgi!6;xdSB8U_P4H-`~AqTGrRwc1Hv|Cz~Q313u8%(*V zvX@)Ua%hV2sUfsu8%6`J;5DmH&jM#ZSId3=6|NUTy4yOsx!bNUt&>`3%OUZt{;~V{ ziz()dKt0D-^%YqU0I>l{JM*&P)NM+-WG|r6N#`xU!TU@%yyJ}(_<#T(*fn4>V2(Ho zGMG{ZID5{PTLbCvLFPm+g04KW1c`WH# zf^&t&%1ntyE{V{elV})76AYTQQBUzUEe>hiQjM_Io#MS~836~dGYC>&XkYw=EOv>FVn+COqN0QFN33ySk!Y^sz?tHbBK zYz>4qPO3|( zJR|ptH`@yijA7+9AT#Bo312>%3uqPSzIRzC7$b%&ti_+VM`LL=OCk^dTvj8+DKnMVxS(V=T zXQ9~So0k1#hXm}sI{&ou*}>XLDS_*aV(X7sXOZzvQse>JJHl`^|3Kc_@)OMQfklMu zfL2pRgJu(8KLT)5DBP@lG@>>|PGsnG{Q74B*NHk5b|!~_!c%{IwDecf%2UB+isC@B z?0CxG6~+u>;|qxcFY_D-mhFH!)mdraA`t2~pYw|JpbKps+VOJkcJBxwDW*hjKq}Z! zfC4A`!HD{ybUMTgWS0!_B?*nN3RncaVfl(sDll=QflB1NkAb96Vdt>zL=ajb;!Znh zq(J>hZWNK#IzI$03|kA`7E;Pfdf)tK~T`ZtwFBI&oN{TMj zTBxo!tlW+o97OI?Z`6>1S_1kZo*wRcVpwDXq!p3{3~XgOPyoXl9@#bdB4j+;feVo) za;9X?q-#k78OQL}e;8^G<15M{VKjTFW65Yfdn*i4PPniE_#iBt8k`~f=|<2N$Tb=q z&D~SMTOUD-y2`W*b{OEfAz?xHMG^9Qin5Z+Dnynt4kTP@RWTshDUZw(dX4l3u*fBR!1$IW;eXWQYX2mG9*t)%w_vNt z=4OA(DQV<}RjoddfK_ftcz`W>;wuTk@{L+6Y{2X4NM3yN2k%&W>0jP? zK%eC_-;6v~M6!QKhI&vHVe&b_Sa-J!?kM z+RCKd=5xDHgq{k4?N^_w6IpYLE{ts%%+BUQ=G=1iGGaGchYKINgVh*1gZju{ zK>kQ1m6uF6^N(t-z3S`EF#54V3i?z?MY?7@qa%s~-s#`AI;&ZdkYOP(E zvzWgQZz~bqu#|H`n#gu>GjlI0ZDH0{-^Al;3UjQbWCsL0nt|5L*#h6l`da|IYjxCk z`X6OvnjR-GfZe4SbbtoCsQ9B)2ti4dLXYrhRw@J_Z7P&HSqm^}s7WLa+~X;%-T(Tq z^aOiQ?Q{mh(hHqXKusd3{7D50j51-RDW3RlpX;#!uPqWK#tv->q0u2}#ilZ)9pg0> z=AJiz;IKhCaDxPL0vKMJiMkq!be)!=zF zImUa43K7M#^wcWBL`%}BjztX#__0VL=~SYu%dvoFcW#I9Eu`&8MZ52`1mri_e6^jW zXVuZ9K`vS8D^%Jc=V6E(cZysDX+46%V~I)RYyiMTNLX`HWR0Pr**#e@wf1MfxSyVH zw50L8>qZ<1@Yt=b4b9`hU-vEWFYDw|GDRFs_H7JB_R?^hV|6jpSOovs2Dx@(PUfl*jiS)m6DUJB|G4=m)bV zD~L+fp;E1LCLKe{-zXNTX|X>ncyUnCn{(vH;-~C|MA1OiMvB6^T)5GUzF<0%i630A=xBXR8cy8cZ zf+7=XYr%z(_VNipnHwaZSKHKomf3yIlE0kw_lQ$yIzV0AbBKv6W$sk>4Ys=D4!^{Q z)n-h&m#Y$C$3c3?1JmHkN%^uj8ey_(N+Q-T!DBoPeKyjiNurQ5%dvJuSizFkI>1kJnJ7bNgY35r_U z!^~5kJsLmWj3Ag>;=#AQf1!Fu1S3sUZ|))&M71nb6*o*FU% zu4#);ZjC9cY2|aHmf+viKtRS}=4n4VPnAIWMpPs&!P<5D+gmtVBC1h2sD7z9FcbGw z2(E%_K;wt?0Cx8Cy+7I~Y9(bVXzGuGm?Kt5x$pC~Z1;EzeuZz_Hm%%C$g{C_UXS|} z5opiJcf>LG)fRVs!3|$DBM~~>0y?|g&XxO+fc77R6)IKR>r4-06~HR zjpNv94X(#;ni-lLv+WwtKI++2G#^}BXPE6jt}K$8Fx$_nMfWyVTC|WaJ~a(sH#m!d zJ6SYqL3IgBSj4!~KxuSR>}`2PfQO_I6sid0k^ALa#AQ1xKTyG(9COs7jRFz7nwL#R zFYAX6x|ul(zMIH)K*`5ug(PQ8v83lqN2$~taaqfkPSV=Hp`P8I6@sooT`%=GvvYGy z_~Qe#m~N#wKMF9$wc|qj1%G%V`~dOI;ZmiX-nIG$V5z6bk0UQ=7eC&?*tJ(>Tkfo= zQJcYj&$s7zZ*IttO%N0BLB;7N+C7CbD_IVd#8$B5je^5_0Lec~Pv{raK^RCZec;6L zWXs>0VC6`U2Cag90b-Pq7gl-~bL>mnZyONqAKYDD5!TXY*_~5Uq{x_kPOl(7aT!`6gJMGIa!UJj<27w#nBYyhiUnGT?Wjl@G?8ZN z6S7eyC^ji{N1UXKOp=r%WTD{|Vp!opTa5qcD3a+%tB8Eyo#|%ZAWht zdE%2{L4(J5bC-P(xR6?Q=$yEZOp2p6RQQq9VlC-603`6rc4d>^h|QYlM@A~+;idQI z&`AmrlTnLL78B`3$TXg1%LZth1zfpEo0!C1&8X;#J1%p&686)Da7yFuBJI}VOGT)W zZr%3-@#r4t_~nwUnGAgXe` zQAsMi0Nk^J$rrFaJH@zJ0Z88Y5GJ~(KsB_M&8;(AW)6GG!(~cXlUiiEumo0lG-@ECRm7i z_0_Nj7|YA)<)9+hF@_qrrV=4&#qBb3z)5@Sut=9K0`q*|2;Ng~9{=S{^b&!<{s-7W z_+P+Ik|U3MQlF4k8ZiS11%Q>Af#ZK6H@X+j*zEBCax*>=J_zxPWt#N(o|i1SjLF@y zteq!D&Ro5&d=+ds=T{SawK~{4ey9}=_{pzY^BZgnTn%U>0(5u8Kp>0rcV=CkS~@mK z_Pv~3+ji*ad8ug=b>if08&_8+0Q{bRPHjA1U4YkiE&A4~ji>pyuP|Ca7dP)NUAx{d zHcrnsqPMvNam~!Vyv#ciY3NtYWu7$}eE#=0%SOM?)5EU=adC4RLz)?r`|tBRVsIDD z!NkNe%(RH|zgT%b;GH+KQ-{W&zGV1kZIxeF|MBz9>FLTjX_|X5cY1!9$Tn@tOM2@| z0=xjcKTlCKJ`e7S!o~+ZQd7Ab;~{BJ4rX*_>G*1PPu%q8Qqi@O_x1@oAuHclKTQHYQVYLQ`n zqnI`Zz)#W4>>XqeKqp27>tFC7F5aJ?0d6s{%)g8^Y^!Uha!>Ie^_|||MH6v)L}Pru z_LrtexD{rs+A>o#b0*!elmhNgGy|OaH5^bz!)`1xXZu(-j!q6?Q$eerxcp>IT2bjm zw8W&IWk;F6ZIfwQHH`}8IOB3k#w8n|i8QrDV4S|E-qyO)d$>c?UAX|G<`ec!08dVD zC$(?3JUOvhk;#h)vM4lO31t*Z)$!u~KF`6B!6>F0mIRkAgCM(T%k=>fTjkh7Iv~nt z!u=&IwJ%&7u9w??%jvyA?WL{_L+xf2G&<2QX5n~GiIXg8P(>MYe?hkKFBA_23bHj6 zRc`&F)Mye<58seC(SB?|)Z2@50TF9UywkH-&;3zX&}|1BZ%x^LZPm?Tk|QKCN~Q^u zDqWVL`irYt#*e(P7veaN4+qj1Po!6$vPu3{^YwK|>F7+dsgH3&zTIzu3r~B;ZhA9x zwa7lP&!D{0wQL;L(hL3`s~GL$%9`4v_3WCN#}U;6uFIIId@~0@$1#>xfE6C#!l}&y zAp2xrFfDfoWgGRrAdQ=G_@5t2+gl5=y4$n*}Zx-{4%7QLCwX7jOOP~=Tarqe_?>qi^%Q*caQHYUCtnV^W0#g7IP^E@I$d#C5=k_ohzLCoK#jH z-KvYY&|9S0_Lb1ug5X!;LnI79A0yW78w)g0~?Y(!s{X+HezHOv@eKL9A>wqkn72>fG=?su%jDyAu z<@f2y@eEdmrYwyCCCB4Z z(UZWE&+r6W2TbI)!y$|8SpYOkq>=s#{Rw2&P7aY)Z`e$qv%oxf`ENCHR}p5pbdHJa zt1Dg4AIOp5G8_%O-z&=tcOK_by4Sch&RJ;8(S@UcY@sIua29gFF_UwXv2r`M?;V>s z0)^}ewjpi$z>Ck~mV^(tK3bQVsVEyDn3S;K8)GsofDLpYE7lj#)C>Nza4W;34!B?Z z_gdf0S%JV+$S;FSOH zAOBEX_RC^&gTSK zgN#26(Z|fyn#^Gu6#QBl8-50(FIc$zGeD8k8m*mP|J;Lq%X2`khU#%7~S^F`E#!%Rz9gZ-X`=PXs4~DrT0qrXUl?xF_=xd3^a^a|2QBFM0wzpv@_c`A9#@`I)h{}rS@-tWt42BAT=k^hSpmZ9#6+3JHYna3ryd( zp;IqV-^@X{Bt>&F^5=$)`Lud!Xqua&9Mlxhf0YLb+VBk?Jk4R~m$?wq@= zeV;Ef_ew2e?qZ1tRR1QHt2W994T;pPFUWEu(@Jt9i@|CvHfO+nX%LSTm9H1HD9bYq z3`=*=H)rJ^6(JJj>1O)Ml#>|ELCWls0mxq0!5IbBNL!be$EBNpL+DTdq2>0=ml_Np zKsgpN+|o*AQ5Z@nz>Wz7G7t`Ia6m$pwucE0l6vLOuwsGI5^xw2C@JVgG#j7^W(8O4 zGP!K+B2S=xjp{@Lvea%9SUKzmqiAR&&^3Lw9xwY*#Y`FO&5BxJb-;~0t$PXwL?ch`?2fy0eBXsljm zOv(PaWrGh2CA>Dw7qp|?eK<$@f`PRKj%9K8pJR`rmprMgoA9;y(<;C|TC<-JgqVnA zCN|fjI|7_zb*%0vy07ji&(52O2#^#Q3G?%zsx_-#*zIN*c0_XV0S{CgVa@bKor_Y5 zWTetdr@FSrR=evSUG|DUU$WLIE4v95nINyHo6r)lA1K;&Ox&$-)YBw^qHZ_h5F3zI z9_Wb~g0>6qs@kQKjXs=Y4k)-{t;_!pEnSADnwv4vS^cJVEl5Ug9{&6KtMJ=SNpiT@`=f->h?ef5{Xsm zm(aAutl%oYWKbFj`Ia`rGdwR-u~iVIcK+qg=%%OS!l*wXrovR`;}nDfzaB5gMWUEziGHN&~n&D zt$~^J6B7(TB+D9%=d|Ay9!quCCj^lYsO7kmUs=gdM_lyxlWL=eva-WR?U~MG#dE?C zvT8b#9-2R^tqONqw&?)oB$&-#NiG2s;&41TQlyMfrB zK)?K-Ko`VtOCK(3LaaBA;QUw*H4IDf4s)a52J9#Pn-Ixqnhs)f6k@1kW-$HPI_K$|);01Cu zRjj$LZW17IN+M;NLv$;1hx@ZNtRoOb4kHld+ObrdxI&7A`uPwPnoWZe$pyyF3H<(r zDAQIk`eSpBx%k`)7Z_e{WmD6|jgj@Xhx+4UasX8;IS6+>79$~;p4>hvBN*5Ym}kNX z!ZwrH*x?ArE^P<5%kK7ahL2pgV#c+q8~;rJ6mP+}Tb=m)Z?U|YOXXPC>THPp+Q?yi_a~R4J#>Uo-7r5M#}&6x8m}ruNIVd@K20>y0iKlu~a<{j=uY7JU#S5-? zbP*G}0fNz^jhfy# z^qQ)oeQo;Y32nq$U=@PSasEzVr9?Ns~ls8vjr%vZY8~u)6LS|F+Cxl zMCO()$Z7cMNIpo`p739+1K1Cvk_Xj+>?^1G00l67?$B0PzH)Ot zaWxc7G!zYD&;tnxSCok3>vNHsG496&@9r)YE4JoZsi1P_Z}0@36*aK(&b^AWvOTz@ zx~VN>myx@cvnKeQ=A}EVnOw&KPK}J7vS@W-G`g0PP{%!coM0(Ou0JL< zjPOw{O(V;dtFH0`fcn=Ks^x8#pUI!x4UQ-BQ5yVNv&`bRz<<}11zp}?rK!;L?x-cA zR5ZW!ZP3y&itZ!satDt}Gj#kbhnA@u<?faqTYx>o&Q<@x!)}k8HSsy$>;qrn1yfZ zV0JQqL6BtBkV6@{4|XOV)QidbI#eFw*#FFP0ro6K@b-_b>M z96C%cM&kaV88HX8*x+!K4Noc~N(qC_BTA(VhMPZYq217ogadn=Q8?%8)Bz)kR}1ng zdHPVHbhVug!E&eHDkAWrKt||CuNiH^U^K21pB(uTpB%eCc|l}Ch=bwrV8P)hqrtiV zyTQj82?7;;WO6AjJyQu()qhqMBQstSfP?x-?EPHr zK{i4+y*oK0i4Jq5fcCEj&OCbG_BGgn3rF)IA| z3IB#bVS#NqVs%K@*;e5VtBCoGX?tny-BuC=)7ElELmV-UqB_OhB z-lWBwHKveB9XX3`BmN*q-_)jcZ{zu6|9q|G%VCdDf4Jh9Oscnn`Lds#u4=U-^D&D9 z4A|&U`s3)6)~+I1T8!UMg25f%ro-p?@DjrwHv5s96DD}W(#-ZI9a;YE9zLgE>X7b1 zF0(9qyLB6uN-fHTyqcXZzzRoL9Pphyu#n3)VpR%&BHzB?Cm0VXVBKj4=X>S5Y^UVtA71I#b;-Y6CRQKO~L3d);@G*kdzuek%%3 ziFO(raQF7QoEtj5YdHpaGk8lKsK4KdVoWIiynmBYcm+Ws2WxC8ffE%3kfF!d`k-0_ zK8ZsV#cV&h*w#m2Pvrz@yS|7qo^DnP3&!Ug>+EoEs@F1BGr^C}vRx5ICB?-6DHOhf zyoc#0+Owngk`&)lD*uHc?*G5~}V_kpBChl>t1( z^T~Qv!d@0QzbwdQLksg~+cTaE5dA+D=kdLwAY$!e>(|`cj9&qOLKFNAY4+@oD^PRn zsj;J3)404;^p!7F!r6rviJy6ysy)Q^w#wk4Vnq{NPlN`ifXs9=ij_73-})!@YZSR3 z4P(iYAVfAhml_1Sqx;<;8E^(7Sb&mTRqg43gAixZ1dDU;!?NJgBLsq%pYnd=tD*FW zz(JeZnK-*RnHr{D@Pa77{=dApA9&O)ZG#Ua2*Ak1!1(_|qb=$?_8V-!{n&T^1t9q5 zM~0AzMk0lA2xQ~ywxP;e8xO=k3OXLHN*I}^HWL2(y0*|PrKyO)Wt9jH=ehs5c6qs5 z<<>K6lH{2k-!r`7nA*Q%=^$0_86cWMi`(%kN-HaNN8Fh?c4X6@_8tP9WWk2bqDRqa z;^8I?oI$;nZR|xK#3AzSi3~Bb@M)55%^rC(-ME1l*_FA|h5wGGX3BKo2D#)wBzeSq zK}|qp=6HZ~!w)6wkT#TeGT$luyb^A67VV?!_UH40h}47U88{=o>rI%y*_y=^@Huna z9u$4e4k4vW6^ixgenbJ_%A4O#^9Uz7hSKEnN~TFh;Rwwn?+h1+nuFGAEdFpcdq>=N zt^bmhB3Qrylhs$<3o~KqD^6$+t7Jzk?_1KE6#LgGfaEceNUt&+()jNQ2!K--?k@cj zSx-rN$+Fa#jzSMzf#IjVdF^Oi zVWxNyC7$&}!2ZM2^Z6b^&dl|M;JZai)Kk78$iJE8-CF?m8@8_F?d*lbG;!v3Y*GcX zX*Nqx6Oj&@+>-`S6KFBwa%OK@A!b>5F0HpXrFVMGiv@YuRE>^tp6(-O3(wuAse-g) z(=c}i+x$}Qgz}`8aI4I()W{F7A2^X2B1Z{nyqv656mTJFU{mX+DG~gKOZN8-2wn)} zWS=#MXO35P><_&MMCPnvH`&y-gg8Y^iDHQ|ZC@(R3V0kq8sZFP>l$JI&G%x~amEDq zP~MpisDE6P>!Qf)6P4ei3axB?uX}9_Qtl7dVcv1ky<<+$Blhc4nLB~yzgM))?v@;# z%+~7)d+Zvj@6@u`Q%MP+o#fv`H<7u0h&}2xHR!xhhpK-Fc=Ob^=peU|U4Wh@+pwQo z?T|w zfxFi%tZlJ(eqY03X@Qm&E*ayVs!tnZ9zA$srqGZ85Hv`#afOTvZIQ9T-IMBV5X%jg zdQe$7)VZ?`XAk#Um9q@Eb=bjEt=GuL9NGR4SMMC1Nf$f_$F^m7bl%8h9jp!+{(y&z?U`D z{Fi(E^Swb>^mSBjY{r^bZUW*S2ifIGcq~*(cqCSu?q1(f09p(mFQEm6IAZiptMx2cwhJ z`guxQlADOqP{3Y`^Sb4tv-!iX$Zf5^Gy~AWYy&X#M3dz7r96%8Q=Kl}HpRLb zcg4hIfWCcdPw?*7b;hhsApS0|wb?CwwT>a~gjj7Y>a8s*}>jheiE-b#^z)>v=ByXO#k8m%x%Uu$1B!iEn1d^iH zi0W?x=pO)svl67R5isN{>w{R&AML7VfTJBeJ`RFGn^Sd=eTc(ErdJ# zTQMhyBsMJw@*;GOX-Cmp>BJl4C5=#(!Guz6 z)X7zKSH%d8t(uyQ9r$upo^q{+igGM1ifk<)H^du}bo6>E6_Jk4ifjrcv_^WNI3?K2 z@@(<&pnF{*sm&iAi&~?FJ$5fX}}}j!iRG>@+<8NQhe_ z*+E5g;V;^8(e>~Z#y=5;Xf_ceSb2W|tSW3cEfKdI=LOEQLI~of3zv&f0WX?ZGdDy4 zi(0qr+ngk;f&7&7q=j+;r7`TT<_+V(!1{qNgA^J_Y=-AXi4#>9c&+?w;>1?0?h|V0Y=9Gq;U%lmINsIK(Nz~@0aw&DVtVl?9fCnp2S5HvBIwQH?&E;d z*}r_D0f&#)XD88AofGM9TXLdZ9sO4KFQlIz%6J4~2g4FW+yx@uwmvP&8(1TNnLIb5 zm(1plSXxDT9tMpvrM>->A-6MzA+noj50e8c#rA8jAZIKEQ0zGh0u7^!PEdKLSQ#1sgc&Ch10A z@2yB6XaABKq6tP-t2aSL<>G;Tb1+yEANnmsEzwguIXmWCCQ`dt9!mxg7(z{L!G7^U z1mnCQl)}f=WxLGbeI`Zj7t$alafUbJVw1cd#HKH{S%#*DJA5 zD!t8Vqs-z4OS{SBNF1%_zX~V6m1HH?lF)k+0)cP{U#~5cm_qlS^lKb(L4KN6RLl{~ zhSoTybfgx3fbgYbL7oM;*rknN_okrbH<7NN1lzWQPsN_BO2slIl9Oxp?@nnfw*=pp z`tfTm%Wxt~*^MU+B`Aw3tH);Q(pddToIE5q154Oe6fFykp>p@qzzanUzC=X+RE8j9 zE;O5NGXy)xs2pT?^`Y{mKp{XvJ>3?<=6Mq{f+L>Gur!c_%Tfs#K7iD5UKrc+V=s25 zA2;?@;EczQJwxG=94z4-wzRwJlUYAXzz@$XQA=X@x2isf$hhhFdk{%jLn5@2?l+J1 z`zD6>1nkW}FR(Dg;NGaAW_FOv!?@fL9gC3C2c|T6^NCL5sbpMst^jy@hGwH8q2e-c zdd^=1C?DyBqTb{HZ~6;b<@=6|!tW@veP@|1$K>P451%-x%v4)&APPhTfI#6F5A+If z=Ei@?413FHG0mo42RFjjPJ>Yft}4FcOw?yy2Bw9PN_;4(ZiK#_=UqiBliQyX;9}iP3vK4QJHJ z){kAI18ofKegv;0jSe{&4;Q7SqNw!Bk{N%Cs^OHpW}!lVyq43vigstDB{{1&e?Hb8 zXmSzvTkhBjNZiQtHshVDyT|rvINi3L9WI@|PUe=w8oG^SWZ7YDv!7VmFxX&R1($9P z4Hs7Mk9aI{4%-xgbWl5^)6CSPQM;GM*5NLBbGZYw8`}>>8l^GhQ%u{_(n)(qq~$DY zJSxn%UwrgsL}>-+w)0f<)9H2Yrc);;C@UKmnJ}E`GFS!wLC(=^t!wwq)i*w-5tg2RGpdk|D&009mN4pjP!$eW(+{?V0qe`5fxRO-_<|0L z$Q6X{$ISV~!CIX3Y7(JQ$wRlsGbEIZSkkP35=&Po?#j<bDoMhNopkU@;kzMPfg@ zM4Bl>&OS!g(0f9X!nv!s+fkIE^6}$hrlJ*1mzeTOb1l5XXB4}-rHv*OJ3TH!CBx^X zvpH5T=2FQq<=~3;KnYRDgE*2*_Xj&f#UF9#$xC^hm7d|lhhLn5tXa-mc*0jF4LA7! zGWl}IceG*&*ygZ;mJ?RyDFi6x>$>wFC!6{Y^|-#+cJVz(vVB9-E};AA z#j-!};B@jD-aV;q3V!Q3Bik=-5xNXGFulpW@pvY1pCFw)Ql8ZL`R@_9ob2y&Cl-Wz z%}VUKq2@W0GPT3}I{Z}`NiKmyI0Rx3gzs=m=iVNG+oNKSp?(ZC{N)ZC+k1QN=SvJ-*b&d@t9OJJd@Bk(+ zn{lYTlzv@~=9;(f`f=|{3I0bAp9;pV5-~4V>7#n4q%%1f*Wr(PQ)S&w2Q#v?G%MDb zG-XB+xO--Ot>zv#YaUF8tdyoyxDqP_d!cZ2B$G#Yc>~7UsoVOAx*L6|hr*;C(Sg$$ z)%m+B*mvlL&~;4w>)a(bvW8$#fGY9duVuFyHhVE5VOXE|qZU#^n?R`n)kz7qrXpki zlx>xqr4l%dU@Tb|RX9+j8=3utaIDTI;mK(F-CG`C!+rWVY1{bMIszA+KSW_3SkezZ z9S{r3hCI;5YE|S3D+~>2-Kx65`ZP9tOn`G3HD}>Lcn^Hb6wfiX;ns&HfJ5Sa?GhAM z^DJNYW9q)#KSKE>wp=yBNv82upmfM7!X^$}&zHJ{(ezJo<_LsMzR=lQhpb(F46TM@ z`pFZZLeh-JDdD;nNPu(!WtcQ^jmy1e8sqBX`TT}Ts^G5lWLp*Y1*Pm5)7S{5XpqA`z^zpMuC5@^l zF;&>+!MQ%R;8e&{0M>-nY>5S<+`R`HLr<{O0>dpxU>#KeiE+NKPp9IUdPi$>4HCyS z1%k7<^hSAH3co&WsR7zZebyO_4^&rBGc;9jpLQNr{AAay`#;%o=xPYLqV>O6_s&)0 z-SVxg)dPo=@s0bHo>2$1jGDYv1Ibmh;sV{Dq@kIzwDkl|05wKj_lz;$MYy#99&Y1P zsf>c)L2)+ElF&Fdn;EMPU}g!YLics6cbr&G zyg~%1JKFY;6FCb+MIsYRoA8WgDtqNc(WW_tPD8JcwjGk`RMi9HJT&(U`3FE4ry9eS zUdTdYS>U4VpJAJDDOXK*`WQ#TrRJibv)Vne(9lW@q%}y+@DmK(oMF{;XEnwD^a$=m z)pV?GLBSUo$%+O;{>q{fT)DW6*vK#Sc4DL7kLRLb@lvgJ+$ns}HmgJ`D<+YM&S@^3 z&K2W7Lk@Ql+?-~>W-HPb*_{w2YkX~*P*j1x&ap${v{*p)O&|fE(iLwJ6KzwzV7OlGn!AR)w$3w+`E3`x69oXgl(M z^cNjgU_u!cAz*G9LDpZI3N8+=|65VfqNC@u$%_z(ocP%vDX<1zZ7S1h4?Yy+Vb?}z zZ`B6kxAwS4r_b1E>BZeUXL!s-Cmd<=r) zysA9Rk{57W!d*PWV*F<9ZHt%{cFKs%(=&-9yTyW}9hN{IkBK4rop=$Z#L(wuRW~*! zG!3UZuH2?u^u3i=VL6PhqhPpDj}*(hQsz^ zm{)Q*SD91g5;XPdj3rhN@Rdj zypyZ1DnqA+Z(#;mlnx!CVJ~+lr>tMI5mtf;qve(cJMMtuxTwZk9m_Id=c%2rJM?M-$_}~=N%^wBD4jwZ>Y$6cCuzN~ax%a)ldic2Wm#c!; z7K;b!xw7QuC5rtxRK9VVO7c1ewkJTWSTaR}mKF9l#KnWf;xp?#zL1lAuyzR&rc)PK zjOt+I;D3rB$^&GYGWXpz#-4eYfld4cIdKP)RXOlytE)Z}ASis{H)Qrv)Oc%nr0V7s zQK4udF=pta1%qq@;e<33nA>*>cLB4v&YE};|FYj2ijrp%T}>2SWE`tkE|-96$Mh0C ztxm`Kf9<*^fro`9v6+eSh3+4(s%Ky7UxhCdPBFnu~-@?uL7Ug9pYDk?`@7wrk7W!)`vDVUmI6|74 z*9vpBy0=mzM;Q#Btq;x%NO*l2E^BwVT`A+p=4MvaTgGQtsa2^F@ZKzv^V0bzbR3A} zJ4cDNpWT{2O&4A2Ko3G@U&IrL$$7bHj;(sZk7Ikhz$ZMIZAHbit2ho_mn{$AveJF* zw0dP#t;BNt=t{E$+s0`U{YAeH7Tp?pEQA`6ZT!8h)^k3Vq2*Z2u5}(*dM4D^G_;kb z(s4oP?}`v?m}<{@XGttZf!~3uoIdx<9U%)lUB(w43&i;LjfLFtTHI*^wS)f~Nve+q z;?v5yfC0YTG=xZG5$RonfEkXlCPFs@=R$U%7S$&LUOQRKK*iOaj*ATTmVa-O^~2mY z7}0Sk3}i~<`HE3FCaUzKt)mY&bb&{(NTquMY`=?i_L60-ez59e zTG!ix0!MCtdWxP1*V4W%4h58J)m%g9A(FRVDGXo34<1SRVSdlP#-2*YGp=Dq(z(mIgD>oi>t1XUB^qOQgpD2u_r@#5SD zABaYim||?^s@v76bvm?DpUWwjJ$_X-fJ$a0q_6+7isE8#Z+5 z)e~C%j`zLU8gVWiOlhlajMQhdR{08P@iMq{&Te3mZ4%lUsFz1U%F$#XG#l}NBviH0 zD^q1qsjd*q134f~9NBXwLH{e*t?zLfj#?gYlhnPD9bR?N!E!}{Nkhm(VYg^`7unuUd$mV{Zs z$z0sT-GWA(_v@SD|J@>kF9u8ols)6N7>p8}n}sK3{skZ4{KoVDWH)RvQ2OcD=CX}_ z>NUq^&?Dy>0R)iFFlocy^28INOnf&Y$+|-r@7>Xqol4IjZ1rkMTsF+{EcctBQTAL?DtOfEtt@oYD;`iKEXL! zIpe+`&x2?BM>u%J_aKZdAf=fVsox9?jUPiUf?c4SDyx&g9rJ8(!+q1XhDCW4uEHZ; zmK`d#UP&678{K3$sMEjO1}J1Qa->r}9f|-2*$4I1P%4cE9U8ZfP8t|vkLuhDP*}ob zQF?8!Se@+MG@?o1I67;T9!SZ^LT)F&$mi}U zWpq_$Awfe~9X9_vJ|Ld3U^n3=TF9@FKnkr!;!2tohE9f?f~G57Tat_NPu08~)#i}Q zQc|;Q7#1}l6$h+@rV$i<5Vf+O5viwozQvW@aVscq%e1KpNErDRVs7$@{ z$QDXJw;Ff6qNYBa6JQ!sZbAev!C2&`9v%>5qh`Xz&0rUU4d_7OlFri4Y(b&H7geCi zh~pwZfU71*{;LV&7Eau{~3*nA&GfFXY*K_j7{oB%a~__0ARt-{KU6YH|E)b8Sba+ zbeRYBIcY5VB{9ew`xq{`k@S9f zL*{08V_?pf2AFzLx8oe9Fc=lUw@{vlFW4+&Jyzo zLtfif2EV1tfrLZ1fR}oJ@~gE9fqbO;RWUb&0~%iB$^F=%TP%RD?-uLqg1EV06e;do1XlNGIGxj>#VCL)|;x+X38Dgl-7QNYMQlfRg z*X6B2&&fZ;h(r^b+$Nwhp}Aa_cw@&=OMEjBwboq4$Wn}>;4jWZ-NRMa;djv2P$f>| zMAJzw;sN`ws4PK$CJ1cri^a{=>CI$fZI9TZP#Mg>(csy;9y03L#KPD_pGcc zn1^aG%-m#<-Rp+;d%ESK^5pwHttsiWZk%u{ z%f0Oos#XWOmB}$}6}jY64*JQD_z(g#BOetLax8$2mP9Sn=ai2i2{VZgwu!58NQNZJ z6xVD9EH9*>w2`PzIWvPs{o;hed{S~6F63jV#pO7YTaMB&7|q{ER6HwZ&v-CGiLf*o z^o&Lyx{1|6ADW$`Aws59Zn=DVPP~}nFe_>v+tS)}1moDkv=_#WbG~2@K_R&!Za9`u zKNHBP)YYXm3{!;7Wp*HN={=LFJ&eycUnvvqV-Zs!<0i}5H0F5^LhYHVnYl<+ov=9i zHoY+|IW`{B<`XXs8x=_E$-YW=Sf>-TB0JYeC$)qsQ<%A!#hAhXtALV}tPX2`{GFGr zVW4LGR1HT3nmrnmfbwECo7=P`t0g=@BojFKD(RZYhft1vD(9^}uvVB&>aa#NGyB3@ z8{G#@1hCox%n!M}zio@b0>HhiS%qYj*me=A{Iik{H_L+w$Y+Z#65rF%>w52*69;lqXmF9LH!X&S28n2t5<;o{VQsL{2mbp9ur! zhRI$1llJ~qP3qBz-PR=MOo!X5QXObcjrQiPvZd?#_)k#5IUy`BUtA!C3i6hiI9s5nV5;+-@4wVd%1XgFk5p@R z%C*b13zc!j7yj{pZ4WhOT(~UIR*(mjELJqIrlndjQqK;`WxRkZnHF8$KR`<=g=WW3 z)vJ(Z-3`yG?+7*>jZ-$;Kr@@yxu;ar$LmK(wPvzC!XD|d<~D4@Q)shyuPi*;t^8me zZiB}0&*Y4yfV|`k8g`Da;+{V_L!FL*@W)7Q{GsY3f5MYM%0Zpkf%SnjkI{AzNhH}l zTcfSSu^xrv`Uxu?fr`}ON>o;452}<0J{a+mgY#i4BU?ErT6_iY!&z)}3z~ZDD?s!t z1bpU1lm-V|8(NouKu8|klT8hDREZ#4IeLeNxgz!B>3FVUP1P_Z7j<(gPhM5&w2ggI zJ8DUMm=;+Rmka(_F8H5=7x*SVlhDBcGB2Tin)y%zWc!%uxo*mMt}8!&3v{XPvgTAL zouKBUR#%u;n`C!@q^9!{q>_$ftoAv16CZny>9)>%L6T0)>@cbag_O=&e;`uQ?`rc; z-Gpy&e>b@Os* z=U8!XOrQW(T8DK5gMwL>y&l{*qt<45i4nc@<;p(P`g}j>L#D#5-sxOw1O9z^%M9}F=ikWd-j^pQ(!W#Jz}vdewq*2Cw3>UDl<+o&=s)4zjJ}UJ zR77gNj(@Gpz~7%neE~1!pZ$TQinniNKhNe{E;G772o5|&H^Ks+R*65{x@(rw({?ld z7V9QdJyNSj{-R4k&v&}2hW`A^+UhL%P3K8X|BitPU?phrf?hk-a*0~FSoF~+YGTkB zL$6x2N;_hAiK;Cd#VT04!Ljo8kCw|Cp>&YCWbBei*U(Sy+RW%i&Cr1LQ(C@^b$qh% z_>i|&l}lO@O~s>FL`WtUJJ{yn_)|Y%LXDZxU=zTT=3~Eb%SLDAeqO#jqSjzzldKo( z8fuXb4BXLjnPBBGL?SBkRo34rtymi8j!_Xal`<8~8wggf=;a?0{eYU{4?R+| zH^<7^N5bzu0I|^fSDrM5cHBT4IaT>Y?fwc2&s}tdfk?xsBpah*Q_sMzEjVH+`%6~P z{w5wewK;Ys@8?bEgO5GZsv5D<=_5Lov*CiVwZWL~P? z$Y{7_;k4NS(&{1!wRr^U$#BmZEJ7?a5_nSMdFP z(38$e=R52++y7aTre**FV*2m3B;m|k4q_y9x%s>$TeGWcyz`lQ8~efEzI3-?j<{~Y z>}Rvi!N-HXN0%RK#<=kSA^esA2b=a+hjo|W`i&evn-YoR6R_*1nuO?9^iGdKNW}`i z5y+CGsAe3Q&{6_E?Dj}koSd%(dFcyl`neg}cH?skVS5)?)V``GB|+&6NT!-^#Qt?I z`%_nOnoMI8Q;a7rgUpUCFrwe=At4Y!kd>$FEfAkes5VdO+6<6NAs!M4Wv;4G*5^&X zdZX~DMF+ecYI;#JGbJs?I|gthq9c=2=kIGYkXrfjf6Vjn9;w{2xbDYGjZnIpiYfkY zI^EnQ!Z!86v@wrdZtiq9p#5_6bBwy^vR!*~UKU=1uk1>y`2D$-`0s;RcyIXSW~t%~ zAL2#o51_5hu){Cu>}9QJwMXA6P^rfRc*M3K{TtpScqvExBR}1ptEHlgH2vVUY<&aLJvrf7oghn52Y1IfULgU%vP4V)&r?=c*+% zJq}GgH`(jbDqyEsirMJU&a9@U`;fdJ#QIe=>jUa%h@~c_OA5(8l^RIKk6uoFhZ+_C zR#~KL?~d|eYVTTx>_2~RePE0d6Vv9W+`(762)O@FZj_riA6@smXq|rdKdY|_pIgKI zh^}&$kgkLIgIVM)L1W-*l#tqoR+%7b;sX(Y{XEyT6CQ8CbEkEIc!|Pyf!t887E4H} zg#n!Z*Sum(<>&BiYGNN5Mjg!8CJbN#elr#nsHWAy9MOv&Efn)o&0@aMi+)5aYs0Mj zJgd-!Q8p|_?S)1lMM)tw!%#F|^ zJUIyv>8<-`Gh##$W_U`kA`tvanqdYljY@oHEKEdX5nyV_ZZWQMzNoEP?Mc;xGG~od zOrN(P!@xFd95mG`ksuf|C5;~2 zG>ps_>CR@F4IqZI;;7`eOaUwH+}T?9$hArJ-}UBGAH}CJHScl2#&NLYnmJO_{Hgdj zRoZ@>wr|SFXxd;yM)zk}hA!+qly^^5DF>>q@dUp19aZ|B?C)W@g8pPD?K`OS?x<3> zFA6P=HXK#@R=eR9NBlO1AZVGVkw%CHEb+4aXtJ)xY5R53Wf}8Ef3rag-jgaehITm3Jxo z?Mv3FRn}i~5d1fXI6lw+ph(69;~&4Eg-nD)hS?v~BQBNm!itSa?6mQ6aZs+wQMvUs zJm~)ma&9=L0Oy$yS8UgIYYfh{2WVUxj?KY&*8evK$h9XwF`b#vY->!I)cw3LsC~-b z0rfSwT5epeH`MX%ePX!im`B}oS^BXVup`hw2Da!BH=E~g{)+amY6!hRI{-qUZoccF zl|`_ch`BkFI4ex1f#K1LsJQZEF(-a`khQ>c(dZ4jPW_Ndwd2g1@GByCW4Q_i{ zmFB?pXO6;_M^1+5wmpCB)VuCMchs3B_U>`0}UhmY0R_vO7b?Tk<*x}tx zmP#cG-@DK&U2O^>G5wLsOvi;n0lzR8pW*>9eDX&INE_C{bjYAC&KTOhj(}_YV5&{; z7NP}`4DL%F-3Y6Gf$YG3F3Bt+eR+jB%_39BZ}Mpd!|fw zEuA8+ZD^V1Aa`1zSI-cgP?Z9toR#MDy)lKCh0;&ZzpYjY;#MlI5$z)0AN`1CmINMm z!vWiiwtM!tKMar5BSP!qHmdK$W7jFC6hFu)@sU#+zgVkW+Dw9UDceB>jto4`w|~v9 zH>q?MsGC^&h!2+?tJ$XCG@o&h&CqhMt-x$f`_Y$F`iQ=eePTZGR^wi^@Yd}{XJP1* zO211Ph^G3g*irz)m_7U<`#0vI*!b$FYTtMryk(!z2b20mg5+rSq$zxl(0)KtO9HqS zTqJSq=||^7Oih!)2Gil$2Vnnd5l?P(=Z&gMP?hS#@B%QhVSLG-qKy5IvcERW+w_L) z_NLAMiJ-;?j5eP1;(+E{EjVh!&iK;*B$s&Ke=_Kc^bK6@5w!t-bt-SPA!o~jg%jI- zib``+Yhx6WuM;vmH<-%G$Od2QD}rlOfgotPXE{4BxZ)!!(1fpb)6RVpH`|{QFnlpe z>0j=0LH!BK-$H(TipaknIpU~4bg*B~?F+8-F^4(P@n84ga!>025IdubCDE^t`Q5?g zknB0BE`9xK&k*_kLuxEH820=MXWrU-v^d^yk&eQ%oQiJ`UxOC>jT`7!W4S$~_TXo@ z!9d_QnrJW>Q9oEyy8EIw{iVUWHwygP&fe@jZ_1zA&bDGhTR+-Al?z348J%lXGhV@$ zc6koV)Skg9h7ZrRhWC=EF{$r)mo)bhlCNuh^Ms&ER%?MnC)pA!bSf!Z0t-OWx#$h> z<6{~tUG@C)rovqLAm{X+EPmT$;L7++o8fwM(vI}X75``{@bdjIivs}TqSrD zJRttuWg@?~>WKwK4bU&SvFd|a9plu!btA}dHxDc#ffAa?NQH}n5N)^$a_mT=QC=v4 zX@O)NrPMg%DfH3^4DrC@By2CEt{~BljPVGr5z$emK?Eh$)~Tp7worJ3IH$oJU40o> z7K4D$NOzftYNRl7EmPqLE}R8?^<8P-N`eY!qwQ?N@uEHOJXYWa&Hqq(ZAdn_md`$C zNXccm7!wwK(Zjg->*Foa5=*J77s;cQHcCr|f6{%QRoW}bmD$UV6^IjKE>%anF$>NG z?U4%)kes}saVJXD%DzFbS)_;67Yimg$(xrEPFL3C6-GeQ)~R$$mIDOhtGmuk0>HtAHlVL+AbGuLwD3JyTp>*^E>-!~;a7_8r7Y_$2B@{IU|`3SvzgzT z>0&uh^lv^vi;XsdMy#0r79W0KR1Or;-Wo<*GNTe(zAt~jaW2=NSxIVH%Sjg8!4_r zZnO8+f*;OttC0@1n4w`o=Y0@E8dWvQGHFM1?cAA?5ny2-XT^)FV%bMWj2&}E5-VW5 zP{xIa>9s5~*@SFhj`xJmNR|5qPge(*Y9BbFM3IBH<^2 zDs@PR(4aqjygYwo(L>d7#<{hTj7Se|KtCgYwj_aA6R2axOb(1Bx+Gg09%fMBfqqip zcY&FpOo1DQK?{@2*0Yq5n>2X1n&gcdko1+X+b4#K)}x1Yu}qVqKrD;5eizmVCJc{; z-J%s|6hS!!^#lfl1gz2gYx}9HU`1(r3^=r0<6_WSAR?4IlX2@XJ1EDwYeONh?9HVD zZ4UAiX=NWU4>Qxo!GNe&l4K_Hi<2aL9` zjN20NO02aG<$2+XF)Sf8&=Ip`NSPpHQsYN8;C|Zamjcc`hT|f*VQQm-&fO?iBPfKO z7-wYT3=`r$mrKa!A}oCxs-lQ6?+jug7@!i!B!AFS%c1GvhX$OWX|ur|6~+rg(%()d>GSjy~I(RB1E+n^u`Cs`Vs7XE=0yM=Nm zTRDCZD292VGVWEPYF)8?WCiVQVNTifpIIo$tdl&#ShjLLJsgXCuSXVH{!@EX?Kxq@ zeUeRjE}h9O=vFt(Ny-a4x2efEHfFx}AHa02qP|s4*#KVc^q&E;+G+140@XpTIPS?B zi6}vscvZ!O2`A29B@7v|1T^ zF%_40`ea&{RUzxvG@I=p{5=efe3;`>vM76mG8Wttz)jA} z%&&zFN3d+H@6b5zK+v;D6y>75*ZM9wd4V-b#HXR0S1pVOmY3ZaE|7X2<XNpt3P+R-ARWZKB$Mg6!J zZ6X!-XRNV>BK=FMz?};TlQSzVaEzLBKtA6H?YBqHK7#bveVW=05zw@<&g!U(wG$8XN>wdJaS7LR=HB*s18WUexjaR@ao;>;m zSd3a!qf3?Ry+O6v?c&lj5?^#p_+;?#EU?W@4x5%N_VFjglk)}YOA(q`094WB?_Ly! z{jCtIuHhzpO8UVwm~!97?ZRi4rh}3N^cBjgAzp8s*p

    TvSXmEuYh3WFuu0s>#TA?;0tMWL(BP6g0pQdYcgCaG#~Pc>kat<|JAc8p{7 ztJbkmbK%MH%*iK~gz#1`Eq6!lE}MPa>-cJ_ZI(W$YUblBiuAc!Q4 zvtjfY@Jd7}dI~FhgcMPh{9`Ah=pfkwfg6m6-Zu`pD0^zM_$w}VDBBShF@#CA(0njx zmsPyTdow7n#*U9ez*57|y@{g<-jjJP$-ob*7?~C`uHctF+-~e+OEU8ZUmP77*KKim z5o$9=T8a8W%CD|N2-4!kvtj~#8i_+?81myxs~)s7cxA)6*P5W{_wDGGXems{P-^>G zgdp|~%qAm9+9WVwx3ZSGODel3+Cf`evYJy9 zKFebIAy!rZ&AE{E6-{`~nvxHHjUpTyMR;yWSqAJo7Ct9xrt+&jtD*rynvQ@7Qdjzd z_ZFy(P3~h*NwbL*nrQf)I#lw4H_G#jQ}6q1nf=(&)9%O3WkR3->%s2l$*L3Zy!rXD z3w&G}ef&EI0$x{vuKJkKr_aEb$F4qo5`qUO;1x*tWbrxQe}AWCZjHIVRjU(ns5`0E zaP)oqS1we*yjpi*B=11`*~K2gKP%DFx$gS39OgqF)tK`9>jaH5v7$))UEUN~e_r-t zrFuDoF+JkM?k|Cj5mF@m2+f0?ta%eO;nuY+HhL51ghqJ8eukqp^UHm;F?Z7X-nvoWXLu>U> z@IJyhi^eM#hgS1Np<(>YiyUPzG{a(sCDYx1c4g6Zy%mm8eaBGi9RK3${lhlQm# z@^JQ`XRY$bM>eSKwQu0yHC1j#=-l#PJX3jPwrI-z~f8_oSSzO^w0s#350%y6JDrA<*rPiY=Z2Q&@6eeru{Y zMwbLXd`|cul3yEM9U1;MEhJ~M$h4n%2WN(+$}g=%osZ6oUlVMT>=%5z{sM%AKz^Dn z+wZ*EqmJ2%TXv+Z1Bd6b+n6M3afjfjCpv0zLhoZnfIvZ{Jm*I9H0*r`^z8XG_A2vH z>I~>JLHhi0kb69G;tvRm<}j93!o(d}1Y@S%kbD0AJB9*E=@_*1Uspl*5mTURjkKMm z3IPFYn^zqWBzb)sY*yLdwj0!YVs`i}slkP2GCL^!CMTydf%`QhQVrrZouRV~g0kne zZ)ZIQ1wIGCCy`)&BrGE$%G4#xST(3h=z=CyNQ-5PD_Ld8p{HJ644~Iq)JNg(%eZpO zul1j%@k1Xf$MhyfR-uiSFF(aTUbytu(!C;S^QGdr{JUCNa7H7+I8ktR*E6xSqw{{w z57AK;u>7Hx2PQy&B4&gd2DoWw{y3SZW|>BPI0Y5HsM%KQ@9J^l05_=&EO2#LJrBrr zb#UnF%W|Cnz4f-vC%_=YcM?FD`C9A#vG9$isq(gC8(A)Q=Fr_O3j>f&Y^vsp;xKe1 zykR*kIBNe*GVJU78uZA^6;&+us~HjJ=zY&3-*EvU@Or;9s(t^_)>ZS^KI6TT_r(ON zYi}G6q5IKqK0+8Y!TmEY9*XT_Lt(Erao&RlUwnvfy;b)=l~^(q<8~y3_LrJek>D=NdLOGWd?&X%}MP z?{{th(=8RLI@N!$1WC<5Hkqg5DF9e&XnbM#tCThsK~WH1UFA;b|@__%LQE8**td#`9}n|Uiv4A%#{w0yx`0) z5{`XVePmM&m+obJ=~Z4X-eYemW`N^F;M5){0Axi=jbNjPuf*d*;KB0ecE;pyFPN$+!ZTJ zr_t1?CR2%F>LXv_esyn-x{iKqYzRyqV&hLqW&JFaH?;J@wnz@eX*=;e@O_#FFn84w zBT;YIukBjS45C1#{SkY99T@NMr{EQuAzs^4LUVBGBiSxJU!^wd>=5OT1$zC$y9pF< zJs{1T$ltR6`a{6Y=~PS$ zJ)dfXzu%5V$oDSHeT1vX15@t3mrJnrE600MgnuLfpr(d?x~IyYL>^xBhtqIFQKF2e zh8~)t%9lk^x(yxuy4o9~%J0B$ImQNci}AYnB5HV>65T~cWW$fnTGA9E51yRvzg0Zk zD4pMqPoV#qZp-ymIS}gwUt`ts6mE0O{=w6|h!_`c1qQ&K~?ysw92V%w< z)^HI7Tz^T+zE04-|BtM<0II8Z0!NFxySuv=*Ftf3cXum#kfMbG#ogWAo#Ig3-Cc_N zyZwIu_ukBVGnq5HNp`c@Y;y0(Np_z+kSftK&h7=kH~bL1-G@}}y0DnqUtc*l50cKX zYz?|HEfqXSfg5%-7#AKEjOnoC2!Wfy>n)KB(AtB@(@o1|U&G07m_Jl3SnRyv#A~&% z!ynEEK*;(yU96tB!W4GcU&1PQGOAyic6WZ0x_Vpcb{H|Z03IyP_#c7vgWuKGUNK|6 z7sSGBMXv9~6jx&hSmem>4lRVQ>&N^Si3FmF?VaR7%gs#sn3#vo1lN@2 z?t6hu7u5$LpsS_-)obGs;fW&~p*b0@J6U9%&Es|W_Ay*mpsEFRi6ORnRkq9VY=0=w z=}oJJMDD(A?{nG#zj%_z20P2dz@|C>5UED}z)@<7T_$+Nw;0uj}liP{rjV z;KE)BMC)$`oLkHu%P+baP9Muq2eh< zG`21*@YXr?n3N9T!UD@AyjL~P(xmRDi+OO3%I}rao=UfxO$+;dkjGtce4`_Ohx8Un~N6pInpad!BI}$2@ z67V3_|J>lJX-H&dC>2f&<^5W9wnz4SV7`2B$?cnaJ;&z*+u`NY_=XiDV)c5|6xQRD zYfRAOzKG8kr9L1DTh-3dQ@OI?^csrVywrYfGrI>36IzE2?;p(25%+4rf06SVIu>jl zvHJ%?XSvZ9{kNgO&LlDGMTq1zPPY|6>C@AKgKs>#1l3t_6gOWZ4cV}ZV7Hd#+d1~? zk8$lb+kZIGzjm+b;j7Pu%!Hz79>$Izk~HY4C?K$ofFy3qqmck*-?mnX*0A1**q3eZ zJA`>}{Tt$rMSEj1UxtzDVA|+k54Eu~ZBlGH0>E`iP51RuHJ#m`tQmSR z_E2T3xwco{=-lk8#48QRyIZoutS`)qYNRh=%G2T`lJPxcdnB(M71t;fgK z7(&1?TS%ZrW?3?KOy=rl?+w>_$L;{bXWd+?Pcb;-f=P)u^og*_yKv1zw=>y7aAsco zF{l*-F^%7#ELk}5t?ec{B_C(0c?6q>pgy7)ZJ|r;=MxjfhFmV%;(*kJiC#R7W+cGh zm$;nEpc~@lB(8~XpXUIyCzSQtFIYgUIuhe_(8zhhG2DmX`}MrQn7uvf??qY1zsP2MunT#Q z-pA$}B*OyH)gLgpSm1@)|M~L==l*{;$KfHlIN1JoQkv7ly!Ukfauu?pN@m|Y7mPc_h05a~R!5yFmxOd=PN2C+A0D#xjtcd} zz5!0uu|6kz+F_QD%Xm$L2=&=s{#Kx3vD_=h%7u4jX}4eVMC5YT|0~p1gW>Q%a&c}W z^ssgJ6awt5zZDE^*9^mR`hp?J5oSGpP=wqI8#Zf_pEWMIQcoPY=Gk$27- z9^63}TV{fd5n#LpuS(Ux>N2p0Utw^v7gGECD>G&sFyr!^ z+po9tK282J1Db{hxMKxSdIV-eEOPX);#)dfZh_6394?OGRyWM?Tj%qk3yollgjEkg zc&RULFC=0Utde(GNT!dB6W{!v83p^c&#}n-$r{R2foZ+|{)Tl)Q726Z5@MryF)NW; z>dIBr2ag{&WJE34v;E^J$Lw&BN=$R1+_!e{1Sj>J;JE9S))4spo$EWkauS}6q_rYo zp?GeL5sv+CO^h3vU8}(N z84rbPQw$~n6XcGvKQ4j1na_-*cE5U9cPm4Wuz$ExKpWxisYo=ZP*fs2hUr%PJmS`9 zN!11G-|>xx(sNZN811tRJ$`P05HnxD!V`S>y7II zfNHDr@AzC@O+n+QsCf>wnY_b`Vwigu1%io6$@AJ6prI;!+TqD1>2g5ah*$N(ePd=D7z zhN6k?PYoA*!P2@9t)%2>^=+i`&D#f|^^L~|&=cv4`5baJPou?wS#!xkNZJc7Knw&* z_6c>I@i4*rGBau2p|@ zaL%k(Gh4u-(}Z?+63~$2 z+R0e0@|=`~6@)Cwi<^o5QQCK+%cs)Zb3suq)L}vKe~&L*kH7Y5Y2iHxiJVUvX4oS0 z-NRwwP#|PWy3BqTj|HZ)h##)6+7Wphmmn=LxZQzpN9g#pOXVV& zP;L1|zu?VOwoZ=Q@|{ei@Qc(Oc-?p(%Y|q<^vvFGu02@zoUAk%P20Mz-Z`Xphhm?& zzm2r5rR7Arujl8#;IHu4lOX(1#-JIv2n_ntWElj#Tj{eV#xiy|lT%q(qY4qo=-wO_ zQ+44Gqh0CjWjVWeynzP{vaV}&d1v1c|Da~(Nm34bD&-FpO*`5ax;|b{q)B?7&m6P* zEy0r%(mhS|isfdMM=&;M_T%m#Q$E~*F`q$q{8VsF{_J8NAshKSE8&I&ZLM)2AkTyC zfwt(Ta&dbgv+QaMkOg%G_&(Ubh^lcLcODE2x|gh=?DgIabFWMjG zZz^|`aa(N^vfb)VXGfAgm@x=mRh$v~@SIj8- zLRR|A_=C?1@zM}~CVfjmIsa#^{PJws09m=XckAGmSJhc@5+g1>E6pjHZe9N^ z1lc!Lg5{PT{IC4f-VFgFjN5XGtElUO$t2V*+5qZI{|%eREj76gAFSEh4NJ*R)+Pud zMTYkmB2;|Vzu3IpimC&hVyqrWI|I?gE(1SEKgo1$4owN+F$z-w{ zK5NG?c~G1VhS7!zWW1YKyMrK-f(WemDKICBm9+T@5xjPKOI7K2n$TC)s7mM8_RnQE z@*$NS4ox4oR0$z15mjm#BYIz6X91f$migFZIk!S?LQ>;=Yq>C0s!d$dX?(J_eq5rI zBjn(l9#HF%lWl+U+=YYsa4~nTv}x1irBtJOV?Nhx)gX=g-GwQ>p+b+TtcH>qx^V~} zEeh+S61D8AUM*Mq-<>xxG%w}Z~D->?3+VgLH~`~i5|{CN4({XPa5`ae}Wempxi zKV3FEcE8A-(s=&DBDAQT_ z;HlwS<>x%J)7Bp!VKxBWho}AWk$CUD6TNk`>9p>oGM&7JuJ}V$NXnT12ZrCdDD`=3 zNwQCcN3tu;$-&W1hy~IhXFEdHgIfN-{Myr(HYc5m3W>svnZ<4cb zNrU#fF+6xLiZvX|cz`D15zwh2^oGHwOGL|7+Ob7D-OphRhM&m!r^=NSd4m5S5KF84 zpWk)W|0%$ZAZ;)b^!m*2H9W~#$05I(TEy05pYX`JlhgEXlm^4Am3L;XcyFQqW2&+< z8-AyvWR9n14Lu(o>7rzzT8O7cK|d<04Xu9h^%Pj3Fd24U=H`q}Y>Jm!9TE2|n$EPo zZ~beEJ&j3seHR|==Hr9OkcnnkJg}I*KSf}bGdCF?gG1y!;LS@rmeX-E^^aMqJpV+F z;6F8(PfZe)ZhA`~(p?xGI$Bp8DG>Y7#OTX={m-CqX{-5e!-EI!?`bu(=5zl7W#TbO z;*L3SDtOn|W&Pn=EHLJH37SNb5?^>h7FvMkCZU!Pq>v;^<4)-sh6b`KSzo%CM1A?v z_B0hwu6^Uo{92A5R*?yhk^`cy|3s}gQSzEMmKe+Bnfh89_4o}0S0o43m5J}GhoSu& zA3JYkV*nAPVUS*rfV`h(lb`?Tpj)N6`ahn97dE5)d{U;C|7l<%JXix%QgIS+$bf6r zK&T@fsHrtC3S#@u{?QjO4BS)Du=aBXid?1<`Tprb8anX@|4hq7IIhcD_1yVsRgpl) z#kaoN$!XBsWc>oF4+bMGeRAJdhTK;UATwwocS0Z~jQ+!r8H_q@Mq@#c$#afn*EoE|FhKaqOTE-P=u83|LZ?#$4O1l{uKZJ z-G8Wx2gv`1s)n3iMpS!5^t;8B%NMFaG} z9o{7qKz!v^&>j13+R?s%xR!2>Rh19_mjoF9+ku8 z;g=+;lYZAEm2vBQhEq#Y@Pf;e0DbxpDfHOK3CKrSP|T_OK1%Y1_S+F%+f@d|EDZWg z?D9U=|4E=zsfMdK8ZWeAULRMAA8*CoP#As^#>a)KTpOO-wn zF{b^l)Gpk#;P!dAp7d^>vu+6_~?SaIn3 z4@p^t9vbLq2IzFtewT!aSQ2{)8RUi=3RD$KWN+t`_sPQVbVsE?-RTycP@4mDaTEGv zYT;wAs;}GTE0IkPesJMqbN{2rtZ5h~L(|v44PV?G^#MtjcbbYTvW_cb%3pcV^rne1 zG-^%KZtNt7C@Kj@qn+d9V@vUveYW^iZLlB6Tq?`S9d?_SKokqU#Ev=I?&SCw^-W#k zH*JX}jvMy-o<0ovRfEAu#=cV`s~Z(U$C~ko z%w06gEEY!`v(3S{x1-D1)Au7Z#0@(D19W$0a;-g2Bh@kSq3h1i_MKM359>zUYYT%K zfIKsoGfsIG4NqoEG)k(^geNaKgI!s?TkWd)z;&FvUJco{`Z0G8!FuW5;|MR6ChOkw z`a?=gkqzPi{lKt8jm==t?EN^cwh-;k1y(~`*W}=l5`ccaDCjl+fGI>|mR4r+ako;XvG|^dG#U&h;6Q*#4-8JbAS7bE?tiexVJ)yPh z?{7e2q8J>VcPxwsNvQF_vIaoo0mT=kH**^#aim2HE6T~7#sfNXB?;4l+0%Rq=kQJ&@)TffZkjg@B3Xh#n}A#tjZ<#W8h7vMWvA&(wKbqkk*NQ02u zZvSKyHlO3Co7|Ust{7GQiTSXVm|Q*vUYwpmG6VhcAZ!~Thyo^|3+w+!Y8$px4?+Ik*T6O{_?Agx>_xA*o%rs^OoGLXoMk= z9C<<%E|U&u$^G&lpRtU6<6G1JB(~z_ENu$NxWgnPx1^&ir3ZfILhZeRez%Ru+=^a# zL$RHXFmk?6CI}Brfg=Nc;0e>(7mP8TF&C%zZPly7(1a7A-J8^;mJ_KWWNSEnk z`y|RE;+H7lW{$X4*FAZG=w36w{?qnzBF0+SbPU-~0Myz1<*Vdqi9N;r{2d)=8J`3+sULB%Tu|L7EyD`C(GVmW?R_ z)%(|A$-P%-{LS{d3`n?niUOosyv*w%Z0~_wI$FU*#mp}c8%wu?v~U+O}8_JnUFPFJXyCHUhsmPbP)!b zfX%Yu(DS`{R7Vi&T(wdlu|(Az_)If==ysLydKP)GqSwsQVa>}>8UF=EocL0hgJSMw z;JjgoDKCHg(6RWA^h>5jcN_^9f$}fujS0+JuNlUj-2&}_66yMI45_A+^$@7_KX6A& z4!t(GqaSOaKNCzuf6RU~+?-U=p52cny4BrIFkn-V4;5%jID%+$ESj`{rRuS1FX{<) zud?=$za!rW8ejRLzrTdC57cXv653 z$xF=))K`f4x2Gph;i*WQE3|tY1Yg>bIvq5gufPklvtGg$h5T%QOewX^#2f>m*8BE* z;4<7>?(99817Ob!nwxscho;KY+o+ICNay@P%VUjQ`{iClV)O9Q&#?XSg|rL7mDNC_ z1P!Th_en_uw1h6_J-nfc;`}P*XCa>pM~JsTi=dhyfB%~Hl#@igBne!zcgAE9>S@-9{PD^2W}EBjLU>zC~& z&)JKR%jHX%--pxvyWh|ViR?G`&m>s{pmx0=zHZ(HzvmKPTOYkD-4|+5*d#KwKhSx6 zIK6+&a(pP&J9JI{a<0vz1`9}n-1`r3}>L(%>uq#wEO zqKjRhL<7btMT00qjR{i1jEMP~2H8wJVKTX6Uth?)9_IyT)N8A%INzr7WWpMqnChC8 zY@IhkbkZ3@0BW2dOhlZ}PwSw|Jdw;#k|Gp2?$E!+=-5#8E>w0((|So@Gy&7CUuQNr zZkIYqzjoUGK)PMF`K|>Mh|1&6K^JsLNItYOSgTK4%$eBBePcw7Sj@H4TJa^j>t&U{afWbq5}00ztqOYyP^Iwc1) zpl<1LJaEo>_DxC7A8HgttsIFZ%i(s);LWomBieWp;!b0+*e7g-Yp?l~n6`Z(OH}*Ep>;NC2mD z%(xr9q#AnIg&Hw-w8osP&hl4N`mh6*tJD>V9GFvz7Q<1w!*8Ec(UaF6Z7bKNOuFOJ z9Hf$*@3R?!7d}l1`w}$C-?kj0YrTnEIzJRb)LWU-FCs zb4CS8LujNA-sAR3@e=CxzJlW>yQLL`IZN9{T&_Vpe?J9O(noIklv;Yi8lWGgQz8cH2LJll*YBWk%$y2)6m zcNyDzqm+lksZn{P{l@n}2OS4y;f*LJ-NYJZc(PWUvh>6AfX0jZJs_I1m6|RZ5gtE% zla{)XLqBh6ZqlEVo0~YZm07Hj>3rSVAxPFVE`V^=Bb2S2~Zvl>1zVkCTxzM{O1 z(PFZeDeRtOnD3aW{O)7ZO~VdpLV!4ak+3=1es3tf6w6J~0O{=4GBVHk_1@ZyZ)?Ho zY?eTh$@OAujRulOM(Z#PBiCO29)yF~0YxyBP<<_Rtgz8}zGEvi-nLQOo^k>EiTHJe zcCh}pYex8BCP=QqLdHLP9WCtllV2D^Qu=tmeNHqIUQ zH)p0zs1)1pE&B?(Yh^l82uGZsX!>)&YCok2E^S;nC})JT6h3WSJ}+kkvIIdV&I=yM zj|iq8&v1Tp(rE0JSr~weq3_cDT+OUIh0H>4wG-8zgLEAkwD5ZbP6y3!z$$DEHO_X& zTw-rvSnA>g^(IjwZ(xTokF1LhM--!+rj9~V?4UM3;y0QFSFHj${~Ie&R8dmk^gvDI zLbQ1B7ue@qYjVgu19C{Q%A-QHfyPnbRD@8OUrlgov5K+DdQi*R_5~fb{gTh zdOa5ASFdS3j1XpK+zi2fgn=_{N`A0ni66YER|R0N!XJyDCAX}*4@&}i#<#BV04xL? zC(bQvZf0CW57GRm_F_Dy;8*^3KJce*6{zSBH40NFxh*d8?S*g5lBB@z8wdv=tCxDh z)izJs&P$rS(8I*q429N|j5Ry~ks0fQyG79~x0UQC6iJ8 zPm?)jNGm0IwN#Q6-NBch0~J>WX|xz*)x@be*`m{XQ~Q}L_L}sAm0SVQaLH|7=`nbb z;^xS65W~;3$HQKKjZiAJNNZ610^)0xJzY$GI$_Eg9nMh4F~u+Nyyt|ca6k>CyPBIB zn^ci!t$82dW`Hgaa-zLVlDMIPC!zdex^UbTstL=T8P9PG!_zM)&-xOZLPvrL-Ab0# zD+LdqT5HCa_sF9G2VDplv#S;SoMDYG!9@ErN`i@|m~^KSf;=8eUfXWjNsIo%Dutj} z3gKDhyhNl`K%m$O@k82D1uAKA@(vPPE={ubaQ{=+$RcE1^}YmxyHAbySM)i{XUT9m zhp^EWE_OXkEsiIcA!ED0J6lHFY@X1HNT0cj=#n58^ah*SoWhv_44W*gsfr&EWt630 zGk(Zx=yZOrgqX28=rLY=sgyo_+$^=t`^SP0VfMnOR*}E7j1J@S_OxmJiyd5iahAr4 z7&(Szp5y+aF`^@=TuXhIok*tb4K2W_ldGghkpbsXKvurxk+>|;P0Uop9| z7`~loc0b0fPW8bv(Xa4y1K2SZIImz3P$H&A>V`b+XqOj*HTXz9?>2#%Qx6Vmvq8%b zZX`Mexla?Zx^oK6w`sK`>$=8;^b8#!bq#4{bPq&lVOkKahuAWx45lUIk|M-jH9plvkQ77cOpyrj(;v5QqW1gz zLkQDaE|VQuHBYMe0bPef~;zi#m0;4eZFU+~rzvO}7Th^a_+RA|o%yRzyiwm`Ud11dBv8-UJ#UJzT zv&i%9H7oGt=g<`x;0B9+6T|Hxe#Zkc@rfMuLzanr+pB4>1?vQy+A!3m3ph3|hKSs0 z@j1>o8d|B*pzb)>O=*Oh1~=6aI&*aI3WTy7yFkpug1%Saf+yuI*Cslzcra4sPlszy z$N)4ZUpDjSJ!fM>5~)^mDl5K@wv+u)XkLsG)P`m?uuzlrK}C3W-ZxQvbaX&5k*t3U zxhJiVb83Rk3>zBHUU|rJT_^7IdsgE*XYJEFUk4C?@tMt=oA#U-}h1!%^@T<{kM6p}hD_9Qx4PhjoAa?ygD;7WcHViPU_m;+%E4O(dv~xm zQ`*tXK*(QDz~enmXMPnOM-yo?Pg4v1^vu>%jz*$TRS{X?B+{P2C#jXzMn zY~#+%TtNxpbMWG|`NXl_Vtz9xJKZ;PJHeC(=zN`vip;Xc5PzQ~$s+m7`o!spRh@2t z-|II^U2jq3x_&zobe>+tbN!%r=|4e2qVnMTB^GxNn0;Z5o|S}78g%!3&Y?itti{cf zaB{)xDNpDtn72N*w`Q(=UZ_^2%(&Xz&})(o#8DjAys-J^W6@Pt-|uKK(yzPH^FXgP zQFV5U>}YQ7cvRKav(0pj@6Q3cXgZn2d|DeLTWNOz%~EA|(PBqs5Je(Ag4TCB=s2ELtcpzoCObKNdzJC8WSmCOPI9?xLE-WyV;a}n zc$Q5KVXN*PrtU&gQ~Ozpft>d0UP1EU>C9P>&AxkGsM#)UQAJ{U(}O^8b9|%8Xj&#< zj4aEb<58z!Kx4aPz#mCxd+&cy!_SFIN?Vn%c194r(sBA+u~uOrn*o@XX|{7 zbfWMNxWA+SAAE9ZhIBlmEU#T(EfXQ@Skum6&Z)YCLJdJvULl@b4>g3P~s#sGGr)8w{6@)`_ z&uoV_#}>2JFY`7Y+j^4|LZ^CrMGKnBl|eS4vPt{~l@}~>ZF+Aus!S<$*ml~wxHYcz z2xTFQz=%#jMaU{+-;BRF6LqoW;blFxmwmeDBvzOzG;%R5-p_JxLvvyI!xcxTDu~Iu zXVy`;56}vgjrpzAbppYW>H$L+QLhEAwP{JC(5h_4Lf-h;{C)zzjIx<}wG1;?W+5+V zZN$zUI6mY4ChOSPy7Z;$=Ys!gs4Ks}IPab}a2)LtAYT86hD>m`yV1qSYRG+wMfIn3 z!C?HhLsfxx-g0`*zR(3mT=mq%`H$;&jrQd-KUlDVlsDaZQ^zUAhunSh>T{-hm$0Yl z)1e;}EX02I)X(>b(2pE1uU}ba>@8WdxP9Xdj_@#Bli!3oKilo3YTqOOpi1jh7Gn3YxJm|zGEBa<%086I-yU#3?4tloqgoJn-F;9sB} z>COo{3Ognn>kB*jP;nq-p(YJks^cC|kaPM7G;zf`Lv%L;l}L4i+SLP0@*S(mLL(<@ zh1sKVd{;SztRJaoQ$(A+1=VYtOBAi80mabvS+h&4$(!{D}=cD#c)}$_2n)}1nS zM59)SLH(ky7umLk)&5RIUZ&Y7)mbWN(?xI7MsL#;X?V=ZI{Iww+7qoMX-B+NC8xJ@@$>WF8$XgYZeDkK}KRy^M7rkN zsxT9wFyo~#W34cwtuS+F`OAUzYg^>6+ob#o-;vSeir3-Mn2OyAz73!vjJ7T-cQ`Gb zA?<->^wOokLtoh+tI$!o4ZBcN*&B<s+Xtlw>_H7zi znChwb*2eaD6)}&;XBMD1jEM;O`&I`Q@}Hv!(&8c4j4VB8Z~y*d^s;_(rUk27C^?=Q z-u3<6nvMz|_>3w#e*Fqp2p0BlYp3V6m7BY15HUy-#GdA)OgI9}LHAmucUrl3T7&mX zF`tsLSi@k+O-yY@#wkxWF>%-P z7{tn<-%yDaHK zArThtcnSJ=IS;#J?)DYme81c6-tc?7IzRLj$o6`4>j9!59#KgAU$^`F7XhC?oqIus zKo0%}@V>nZ^Y%7-Nb>$52=;ds0A6n&y8T}tAIA0qW#6Bg!@~Zojs3ZNe|=w7BvI`C zSlm4Nn7!{@^>O=N?AiUY{gN##c%;?+_*4w2jMHAO z!~NOo1o(6LgfSRUyQj*SLqiNny=e4E{jn90m}Gw&pQJp5Iqytq%R_f-mQn|0M+=Df zcPghJ3?UmM>3s*k&i_uY_*zH8`P1-TmCPM2Pp)#JHB(@b#%K%Y1NrJ(n_>^8;{)6` zfeo6iYwzp;^{h(_C4)}>9%htBxX*h~!nv`@G{7q);@{Bh0A=E93|8J0=)W`GK=Cfm z3oBe1^5OQAyRf_V@wZXM9_NmI8oMh6;v0<5gw;=QgfWM&kP1US{@@6kn3@JT!fn6q zq=f_1<9Xg7E#7k#4vhN7dq?X1!N+uqVjO9ocHR_GK3>PJPYv&H^z6JszsNiq08$!S z^Z>&wOb=9voE*%jRpeRZ;40xmSD2bP);ZQc&ln!)7A`9qTCz)D-+1KY>=v}5tOwr^~ZI$*|wFZ@7wgnmWhF=QvDq$fDgX#sG-#~vm$pOB` zW_ot*MBx|Jn5sU0EI7HSdYf+=4wm~a8dV43PN>KtA42`&NHE)<6O^^NK9{FXj>cDX z44=5T20~1CGo;r4;$iqwud`8s&BG8oM=37IR=u z2gSq|RFIbx`Im;RInr9WSsi~gJNkFyjUt3g;&R?Wbx8|$p^-YgM&fu`LWNBOs;fE( zrBF}&rA`+STT!-NYGYECmQqGtSoWt>W}r->gA&nguvDVLhO11*LVZL6Pz$4RzOJb5 zIyt?K(+pd*yt`8m8zQ-Oq9G=kw-nL;0xnL48b@X@*iR7g+?F#N_LtD$O8isABig0Y zHZQl|_le_vE9A?NV;^l~eJbsG1!!(MKsBWbq=I_;Zv1n{2l8Q%*0gl*f#(lYWM*Mba)h{f7C8;!WW< z78=h5M*ChOrs8j``bz^vVprC~z~ z#>U8&lRo6HPs3navE5nMp5ABc$H!h_ErWhb3o&tS_L#Hw#(d|jC?Vl?^_HCou?_V_^jsv>Q zKJrN ziOYeWrLW>E-y#OL1&^%^jpt`_BCkcdP}dS1Scc3w7$c``1G^wQqW(k@9F1jHF~uaY z!Iwc1?y^5mX903D-lLYmK!gSlOS4kbEoH6<9>3L-Pr1@{4W_DjGl7BQAC| zAU2EInXUOv8D&YUcMzVNJd|dugWg#iW239`;%ck4-5d6GTIR2wZWaResZwJ;x!Ia7S_H%5D8aW|~hIKv-kjQRU z%kRt8FT_!82Ih-s0`+sq1|C-1vx|1bKxH2U5#yS0x3fWA*zp-_rlKMBw}vznH`>L! z!tWLHYYbf16p6XJZbd|=i%>3D+3U04)-f#xG|0V&PK2@E>dOb%pr?2 zVM-t{0dM_HFI8|_A(11?3&{Xpf~iC>F^bs$-9o|(FP9d!k!@s(u+;#o?#vsv4e58ZJY@>_qvOgu6JEK`6V2NYG$(<2vXqE^$il4C4<1^y9Q^nGDPIW)t z!c7rU1(gZTG>7H0nf66PDMWdu7I%lxxtr0rJc$;|?b6-jhiA%`6`pPQFuf7W!0NwwtTm^wmjz&sMt~USG^K0qZ04o#8>0XodXW@>slHxP*Dp zTvo=KZco(#ziVC+G~wz>j9+Y`a?=SHYX>2xf1i(nzU*~NFtUG81(uJEv`H+yU!hg` zwvg;dyx!+W;SMHrAeT!ZN}Fh~AL@F%N@@VFBm6(J$QTu%DUo8qMgtC_)ZiQN;Zg&I zB5vdei`XhIM^~-A{tO!9B~K;A{R~JF`4tCN9jXMetiw^an?{8CWvMkcOpI=49j#Z; z^>WsZJOS1OF_~uNle5<^RMRD{849w2sPrpuyvo2OWp<~zih!-AY+u^dx>_@5m4gky zkR#E4DCmr3;vmWn^84SUw?bYsT`0(9>{b13R=?x08I__OOq?l(j>Mv(85P2&5S(LL z3trMfWhJ3|vF$Ee!G3WiR3@HxvNg3LY4gG`S(-QMkNz$&pU|UQ2YweBKH?&?Vyw-t z*#!==zTP9FdEb9e%XU%P^vl@0Ya=;TZ&(6n!RMTxg~bMdsk_d$?EE zYn$|BzDQcD3$;+6zv#?ulIJ%=>IPci{6Ov(^T4seSmRM2X~JTjz?);9Al#54Sb5o# zm0h9mnn_?GhrvN8NAn3hq!kzl;%rt&ge3n5aV3+{gHbhSBSD7vf>7>cnn=hE5Ww@l ze5N0e2LT}T^Z!tOL@1blRJ{K~ZIGY_allzwli8`D7{FQCk`1Y#2$D(Y!DyOusi2U+ zz*#x|S8<*i%3BVcmGhrGoZzfn&0(%k{Gej)|E#|G#0?7X4>;@pX_H<88U|GMf11?# z0)6!poRzm(W)9i_44jR%xojR<7zD62pDsWLL141+GO@9Nk{TN?9~URze^IZJ16Tg9 z-mWyPiKJV*5@Z!w5*7uCgQ!4yNje=w_(mbP;Rq^3MIa!XC=x|L6r*5}E%2a@@F8wQ z8COh36x@NZsi;H|qv%LrbQpCU;<%uLc&kBNy8Utg+{?c@U46Ey_dVyS;_2u(eE-S$ z`#L!ja1M-O5QI5o|*H)DE&+9lF9$&&`dsaD7}jOW+qC!CDZV9BzleFv<#8Y6sh~?T}@5EWg#O zG>;HwzicZhVyirFv^ z`u3+PIc@7I&BARPgqIFVmf7k0m85P?&CF158B=lzvv&whG|{n7s0bC(5)v!y5@@L> z)LNsP)3$k3p47OW-;j{-=H2tWJ<%-CSlbvdr!M3}Yqo{^tvcy@l1P`pPa*+e&QO*z{9 zF>m_1o03VA@yiq@?#>2(`Kyy>xy@%JEEew06&MG#tU6CW6BEFA9PSq9FKjv?QEYmr zn9)5)7*qPe|tzUK1F_lN%cLlUlIe!twYd=H)8 zd8y`CrfBJbhhrt9e*DkN zUgQ@WN9pc7Mi_E= zc=6EDx2np(v>4IYvW7e6(s|Krk0)MXBVJ#ed*sF1mJQ*@-Zw-eJP_yF(VN zOdqcvvoyr+OpTpE{YS_^JVU`bQ+-BlbUxI3W!_l1X+ph=+LQ^|oEIkM)Q)3FQ{?nF z^_Liu4{?xDZ67{_rqQ)YpAqM1)S$qvygM9i(nO53&N#RFj^)J}T72k4;V_4eg@4Pe zSM8C^!iWE&i7(DPB{Fh3X|Y8c%yAm_hbAy^^FJaJm)ajH83h`#U*MK0B69~>(B7x! z&mETD?Qjjun{@bY=KJVYZson}tIw>{2S+rOhKcR-=GHBX4SMt<_CeYPk?o6y;Yp*7 zHA3(;jHlaD%Nr=UzT6&LFu+ZUB z1GiB6cenGV>b#zz9-R|={bw#ye(YxTRsFp;I7Qu?=AotcC9s07JFYCM+|%h4YPC44 zkUy7Mn*XqIaV=ZVTASON|-EqlAoyPQHXuq5|Yfyb;B zjOv_0OOdtgTfowLzB_Ycezk4{o0Dt}14~?4g{qA(+>pHXVfeL%D_s$UUWv4vpCBvo zRXeUU!)}29y1fi#yG?Ev>m86b^M$hA`K>e8yuv11y>r^vKE)G$X$b@QTxPki7?^h1 z*4%3QPFC`|DDdrpzNFDU(wf$N7iIEw;54~)R@v<(cT0k3*1Jx-?mKsH^J8wRCGeZS zB<$V|=IGlqV+c=ubF%mgWF@MWnaf9@p+%A7OI7uaAO_Ztb7fMKro&MS*)J`9b3&f@ z=tlgGmViJv@*(Cv-wTJuLif#9{7Eu#{!QJ87U-5$UA7h9nz_%Usp*8UbJpXq6tA$E z%UYnxR-C51O$T47Z?5%_8BAV!$0Igty~@m|+2%TAyd*@}l=rTAjDE;?r;I~#M~mtX zfx(>6QBK+Z0;_BLIrmEpU1i|xZTPMk6XQL(PI)eZq01Cw{A-U2#Fh_Lrqkql$wKE> zKdwHWdq?ijT9w?DeOhJwY`;fqorA!3xO_ZTRS(b`roVFADu}T()J{h@#X#B0NIjso zSj$}GJnpU9D$_)5IW=U%^Q~hQ*6CsN=UERGG^6St)$|R*pPr{(6xkV7IX>T}Qrprx z=jYUEalLJwkWD629A}eTr^0o@pc_Hw?za9}xOInUSbgV&;*15biD{hPJf&sj2)ZV) zSb~a-Zq!REhy0=07??8$9(h+YIWYHH+z(|{rz>@Kh&W{phHtK=oEca9q0*eI;Xg>- z?fa*Dz*U!35H@O^isj=-DyS7_@lk#Nj{EE)tUWtd+xbMx5nu2rEkN5o4$Xx%% z5KlN2Yzc7)Ux%5M-3JI2wm?< zVYBkOy|g7eeXlx(?*z{JNVj_SlvJ49&WHm55Tw`WafoP`;w+QfKr7-$Ka}$vxKu}k z^E>(y1nbxz>~-DX7VbHasf{2Nh56M{VLK6v2T_4+m)Vy0oMk~03vX+gRPofivn1VD zby!#quVAb?e)nNU=m*O~eg6qaJY*EV^`s^wK$*_;1a9WvY>aGy?gI#h@U`~m#Q>ec zcytBh5HR2_ODB>$0=1$aazcY7y544BZGg$;&`Xd(N51gd!hnlYpS(ydHGP)uZOz=M zs*egQhwn2ufB@{TwFf-Br+@e#`}40E0^>y0^_I-uD~73OgPnuc1j_hliuS`r2PRo4 z-J-ULMthn~mNi>0 zQ@Hup>UE|6EVoDw34b;Hr{h_RnrRmmuKvm*!EkFCtCjC@JgrYaA1)t)o)jeGQj}Du;^&@dxx@LM{YPQJIrOv$4CO|X$L3&Iar%ZXeF!h;; z8C!L|a#Tf!*urh=)VQgo9rGSY&&RP|RDY;6Htrbemgha6)sd(1b=%UQ9jvB{FKjK) z8vj;non(Hpecgrh%UY~7%qpVYdE@3pt=_f>ZoN_Z-$JSD zVvmlg8?$Y@r){dcd3XnhcDbF^oBODHVqeu|apBZsi(Z3Yr&3s7$tw0T1bC`$3|S5# z49%3zKuO|%es`*&`{s0enK3t-)aeF$!fPxv+0FbO`z(`78KGNQB@AA+0l+YLPd9ig zMojh`7!Ihh1Q@Qe|E!f5>M%oycMoz(7?$Gxahi#oP(5hr1c26JLbWE_anRE5P6)#i z_!0HRj{#l%s<*PHTMr%dW6kh+<|%jO0tTq? zRYrxeT?mL^fF`7dQ%XAk;Yd|&jUlgCOT^~9>=v({5&*oe;Bpud@XzR7lwNVDq1R=P z^EwC|z7!P}kAm_C=*^HBYf|?K;yK+v^UCf&etpVZ9<^v%hL<%6wJ{@f0#X8qvCr$H zeSZGU!@~dGDaxC&c2V8NsPuF5Jlcw;Hu$8-^LI?W78js0n>T0D4DpgWx2Rl;LR)8r z!4jd!DRrb`v_<+UR{(ScdsodEfJl|jl#(f~CDZPQE-s%zbK3S;HF8h0<&=;gSPweS zw1O|km`_s~K2#v!!0T1bQ-R?{6)h%o)yiBS#n9Fn!N=1!3Fsdb?m8i+D{~ALCYaJf zJ+4jYs3WvHQ|r$Vr&a?vR*4ty5|!1^lfsuDQ|oUC!4v9p)uYab(sOEGs12F&iErN2 zOcOqXY*IhKdjEz5=hSb)88poh08bHKJb$snkt`V3^KPGMlP41y6z}mXJ(o2Kw+w@g zIsry&XBB45!VQ0EGyUnl>+phh`{L|V0IJpZDo4}B?QX?+*`i6YwPt~mYa+|CTJyLU z>zR=y1zJVN3jEHg{2h0mvAVAg2@tVf)c;jE@`l!Fc$lQ)PGsz^BV`>%4>C8z+3ua5 z^2#lT7UwapChagiqoMuy4NwbOHuOcGoRM;Obvx(6=18r<-iEaVaJ}$7r@(hZPb$wA zg{zN>dxotJb1fC>Y&;fF|Eu1|dxD4yS&71UM|EAm)=O1bLda`@XFFj*W zn6@tYlG16TbTw@KsC{D3u#-8-<{s_z-W3z?{(BC7`sh6ipL%L8_>s;IW5(;N?EzYD zpNLhWj@w>3lIyP_Ku6RnczV4H^l}Je zRAw<~clQw`4Mgzt_MELOqNo>pZD*F6+-{7FcbzS^JOrBFNwVF(N<_P;D?(YYA=%no z>c`hv5a82!6%QDnrMiANY6MCs_vCYBmsFPp@q=}h&<3ig^`)vEzy{GW99#Nyj`2?9 zJsku|^pU>G!$Rfy;@P0#{f$5A8bfg4Q%Rm}xh`w8*FmwpUw-3ZVJ&E4W7gEN*9pBq zTLOc2dai7zuc|T96W0Uoct)%_o#ey1dyuo&w+veOGW_g?vMWs<`lqfQiuQ>pSRGpQ zVv&o<%5#ZlkDmPV_!{4k+xL`DZXLfeoyJ@#~Ys z*xs?kK6T2 z>|#GZ<6_`Ug!ua+gE31~;y8==`?7R6#-Yl1oKM*jf0@XGa7qe!2ywXftwJ8k9$34tjPNk( zKH_n4vV$-Lalds2$RfvGYMH4uc$qd16y1L040#e=YeQItncHH>m0N+c+bQs%K? zYQz8#l!)0J4hf242xj95dAGtGn6kNG4jZ9F%;6%GrNbb~CWJARx^x%@0_n%!m-R#- zE(MCjWzAr^2D62HXN`djBWDYN5egvz8SnEv@h8?pU=Ae`1jZ;qC<<}O%Y>pJU3O4^{y%d7iXxQV zkD};z6moF#lAv7fcVs+_oCOpIsrigL@jyWWC+3vh&t_9OfWzfdm=J^6JaTk^(J6$4 zVN^omiV+TFr*jc5O!k_K@G$a{a8W=ZpCcIv1js1t$OXA3BL~QMgbgD9pVJTaKBaJg ztU_dGa1_uP$uQ0ZtU{9UK$Rtv4-fFiSMLtskB32Ix&>5CVKczg6qEo4hPYoTBx(g< zTZ+>#%;RDtLV^)g%)?1*2bc$i$ugqklTt`rD3MbQvw?N8Gi*=}C^9xa@GgjdF#Rwa zTvCxIasaeRX$8FysK?)?8n6eYMgSQ~t{X51v=v`3rzMdt4#q>tso@krJvwIQ5DZ8c zRB)7I7xB44D;PhIW@-Q)@dh6i7`)LLdwLq}jedc*0nOM7TwmcR$wy!b!Lfpw1~mJM zO$M~O;ROMsKTW0390ckwULY6^rsj^Oja^@GIg@5=1mhge7g$v^X3}Pi03ROck%DP1 zxil;Nf(v_Sred4}zEMod4~`+^+#*03ObQ#}U&1n}!Ol!kzd zfA$x;=?5uFkTYqA0U3&uoJJ9F7f9L=gpAD1gzT$UXMoax5GT_T$|mkXzs(FG!$?~j z$Z#^3vLTqq{(9#SI~|l1az$aI3vrwbNH)qt$mI>lIBb$(&@=GJY(vP{c)|XCw6S8C z{eN+R`t|+kGP{9`Q{kHUq&4AS%d^>Bl+7{J`{4(#p9JQNU53nZ(e}N?BrewJQ0BRuy01*HH0C#V4WG`fIV|8t1ZgehqZEWm) z>2BQEx#0f+<{b##0b&nqi)*n;iG7>3b!*a&4NJWwlR?0$q9nGf$O_4ltR4)I*SNsF zFPA5oZ#joNT#Kc}aog?$mc-@oobP=5cK-11A2w_4I!Mwmj$R%ae=qbSEr^!!DvT~) z9{q4We?C0Y(#(%m{yL6=mq)ijdi3wF{`-IX!_CPmUhXzQlxZ+Tl%CvdmoJa5vTS>D ze4H+?f{mZP*o4a@PUDO0#WLO;#}^mjGC018lhv`Q8#?{AP2y#crtrOqA6@(Dkr;0I zq2Fk$#J_=;aX|Zce|hC6S@5A4!#H>l=Xi8HtPf<~VIWwcY1D_Z4jyW7jI*i@WZ!8Z zm{n~g=WZi4EN*bOk<9u??%hVR>LU&BHc}0pHgyD#w?PCqFXCk5XYglodA#wH_q*+L z75e>b^j^Gga8-1ow{-&JC2C%UB@SQ-T0N3crK;!^sZGgct z?1|EH42CAGe+S-F#z}+2hH>OD>FuT<^_%VG{jlZRB;IX{(Zc(Uc3RN>4NBny#u8Yk zQbKya$(&vJTVM&B<;m$~6es>-4Ko59(f|!K+5!9*c11&?J9-7G!XjSX^3V7^^2f6b z7^`-3f_n}c$IVIPZ(xwWeH)Mc<$Jua3e)Y{Uk0o3f9+(KX7T3d&HCk06nw~zj&Y=P zm5Cp36Z|C+Kjv|irSN{>ry*vt{=Rcg`z2kf= zT)@e-51%y*+ZtJ}I~eiXp!vLo1-x1OqWtx(zg`E)t$b$^gI1-z^)EqTQeXNZ3je+f z_(SSAf5*yV;Fk%k0~j9ul`Yod2j7KXwr>;o&N{fr=1IIc2dKa#hb{sx2`{heSFhsa zS1($^4}gWATq5!FNI#!#1CVR5~Z^V9Ow_AX!zsutM_85=^ z^ho+E-byea!mI;)CH?i~ku{*-wy?2cpk=(qe>siDrYeh#VD5oovDhv2!Z6N0$|=}H*swnw90gh`sci*XeEbM1@2ikkqJ-3AQ{d0$>& zf2xna8-r<)|MesPWfXJBG5*^mT;Z>m@Ds-1x!abl7thK^GNcVKXjboFV0}7u#^X7R zZ`dbWKk-lTbK}{}wx;-1xC$CxhF4wjA5js!exBg_^O-xfC&a}*0?+Z+p^rlmn9suu zFp-h8;6;|>ScWY*k)QeFFhX+;9@r)Uf8f+>f4hahfy*<)k5c{R@Am5nfaC9hTM6|b z$b208co`?bbKw2kAj!fY{hbgZQEKF4Zg_|zIu6d z46``F!QSR${cq#{z*XZU!)3xBL}?j3a+(F3)9K5j|2vpili_$Wd_Fga)^pqOe`e2z z?$CQa_QtL`GDfED8UIfZ5NsktQsttvXw|$`e!2`pxljHta-SMD5pT}KHN1a?4>rEJ zOoUp6Zisx+s$sUz!FNfBtTr)$hE;OU6L=rY_OYR($s?yIlto27ijr0Q*oC zX72QfZR|(z;*~uinL*pT<8Cs_>2WWdcV2HW!J! zOv-j(ooSF<2S=|oFIirNS+LA@Nl*d+?zf;GNsT!L@}GQ{N8c-jY~6E*f7TF{h(n~% zgHXCX^MJQb$K`K3V|}borlj-qpmfV}=JxafD81M>mgnVt%Vm6p=vu__A%j%}?%8fZ z!l+s1IznOm9As{~Tl@kT{y0)s5lj0Sql#+dxiy)v#dxR91h!SC*vj}LKv%=N&-hsq zkCWi$K)(2(b7M~*j`-+fMtMErU9mf!c&ca&5QI)#=U z`H`b4n)#v&Cr#aS2F`r|FzOm!5gd0MzH|2WY%q21wS8t4UrQpkuPil&raqdG1pMf- z)O7|kU7w)TRK9J^oq^%%op&4o z%>4Cga^>R&iQmo%Xo~=SObT1L`xn9}%@Xuxwb0p__v38pozFDwuit1#ui-y!^-Q~k z|Bm3&|I}X3-hDfpzj^oCJJ)d7e7uL4T+8y)0I?$@O`?%-1{2#HnJVE#@mpkC;){pO zA$#@O2c1}MLVe-ph*un)bsfZ1p}#o`ZkT9zrrLW(ekb~lw0d<610P)hku3#I(B zlxsqVT#$(Q(p{c$&GsF8#(XjoeC5-c8=#A0x@I4{{G-p!wnh`z8_Yh%xeXk{7`tAd zJ#Dvg?mV}gjQ%CI@PhxHr1X=#)^dv0z?qN8BU|@f7njejfBY2;3qU!TB~|1~OtuC* z3X=3q5?+F#Y122HzOlb?*6@#Ed^6&I zoDac~b`h@Ee*t{y0@GiT_&xtlGoe4VUt*Law;21{gks09PtdsAt^JgK*Mh%CFOR|t zZ5>7d274oI8-57Z-@~6jg{$mJBW);uGTm*oZ*BUmG+GZkCR`c za^2Dh4E#a**uICp3n&ECFd>*y!^?w~FT34erZI=&f0^<^8{Ti5l%cC59G3x)I}3Xb zaSJD?>LH3bS8;uGYrfM=BH;Pl^oKYPPe$0B>SSp=&i4K$2PwDEro0WL2@ z{=o~308vmEZ@42r8@<$f5poRua#_2SUih@F^VfC{#%4i6{gzY zu$0#h3syh3Y-ea2L&2r{#H!CRhOfmJngH^hBG%PdOQFvyVxc{NQL(A4iS7-JJ{r$V zw;Ti2kGf68cN8&QHlWVmOuh?z^y3LwszNJ!C4o^=r(2ZAnQc2`8z-htcVrI?-7f4s ze?{@X+jNN!!)*Kohm`#s^YZxp8dem5IA6u|=Qd7X9*ry~kCTd5tF+QY5xD|FA8p)E z6=DZjg8Pg*SgiKfSUWPFTSwYoue87Zs{M7>X}%p`iCw{+1cWjMv{~N(R(2jQ0se*! zMhbC(5WS+e7>%Y+bnM|gX>mS+y0r*?e`ONy zqE!`94nwpuk9i1;>hvN$3imL(xW@q>e^4+q@`c0prp^Q&VqynVyfL=)p)sf^O15Xr zho*yk;LE0Xg1|?h_-}(KNc^=n4bt#3($3JV4K8oLlE3x2lE3vykiR*b8M>!e1im?# znlooYA-6A@{4p@{G06YjF3Q49f1te%Ht;2l(~`duzx}xqzx_!NzwX(isXaiwUM2pS zGqlET9{T=biJ#K&KLYWe-KJTv(Z+F{p+6XldcKmr^Of`;ll1NBVBpMWUWN4MGj}o{ zU=r#Bk-l)4|JF#K5^g_++<)_$=>99c4?b6VcRmSvAB-_2gfiU}dItg?e+{iEa)B?K z-nk_6@#)>$Zr9tYh1eb4n+%3ZD&?0-?3Cd65r}=7gxG1~H8%J8O7o+y zH2>bl{$KJ3~@@3eztxty!7|8o=e|q=0zV{=L{b_U^ zvvcn&#ecSGd!Giy>#jGMn1f3E&hd=lU^*?AxPOTh|FP2c=DTP~ntofEz+uSsIS~G5 zo3LkemGOT>${%@Sqn5Pe=$<~Yl&Y&QmGVDU#$I9YpGMnVcKl|S!4K`px zP24j+jjVm$vOG_(f7N$?v5W_-(*2E6|Hn$^iA1kp>)b2bv`}5gXqIW;r{64eR()S@|c6ha}F}LjTyxLTE zGBL-FQ7+c+)r3i11)^Wkp0Ekqd#<9ZL0H9$F&#Vl$gJcpHTIO681BR=*qX8&afe11 zWL#l1UucuZe?3jyY68VECzjW%!Iv>{bf+j9VRkyREXycj&B_kVJ$*i;72+N4*U2L& zn^qP)q6-+MnH0-fG#pk&H#~C4QJRaV?1}!($d<~D! zTnAa8U4+Tz#!muGoRy$m0FL|XHMXk*6xRMStXWAa43zfjZC~{P?0+$aI*F1h(`|Wa z;ith$OGzB3Fb_Y|aE|`9AFipHUKr8rdI6`cH@6lS;D zlQgKUf22@|^0tpgXZEA={W2wcqk%OW^22)-BUMU@qcCo6ZeAn^oCN>}(T1jvhhvnc zTo!ma4%gJELy-r#BfuMfrn~Jn22OzpihKWVf@czIV6J7@o%F>4=%r~he|aTPJPmS0 z%L#;tK)dk6WPPix{RHR&i#s>m(BTPSLbwDXf4P08IfnViu?COBo#5#U?QoQQBw~l@ z#W$&T8}GC%26~S!!pj}f5Rl_y7p_;DzlHI)NeJ2$-bd-qD^GU-93NL)25K|M9E?V` zWtf%dMWd*>E640w=y|ah%+?S;wVM!-1{dW6r|`9OgDefVka&r>k=9s}I@#&S0F$Z< ze>)pEP}fW;jqu6XPs8P1u|$ndJRq*H-Sbqt5D5^eN_Sl_aweuV#tzc0V=v=XfC!k9 zlt+j$v1yB24Fofur~)Xd;Q=~6{UL5&B=H6|ZWX5QfvC>HXc_#*IsX0Nh`l7R-EYpM z05}C>qQ{@z4>;-^?tkh_j}9Hr9 z2a96n%^g&M_px~~p$0ZzzVpc_#<>yb}Kz6T4Te#)4X}LEtEX*0xnFkF>?nPG3(t{Bj)`C z*>sx0*UHLVGgR!kZVbJ7pEDtTGf?rg1qp2yO~mY@vLb52Kc5OVPolk|f5BgaEw7Qw1CoD9lI3rWrg9fVP4{~efSdv)e)9JCwPwCB(Y*T0*%WZgcwzKnLi&6>v&Yqb@xOH@ z1Xf%29PAl_%SE^j1iXYfgAhcrVrJzR%}G)+`gU2k4)Ku6oc?Nn$H%TDfAuZ`yt7M# za@*n-VdxD_-J=4{$AWklO`Vc1s2a4O1%jf3HUrpuq+SY#7RfYRXhDMFA^&}#fzVT& zV+Zpi!F(RvaVLCpxGk#y3({9?Ai*=wgAagpbXaPfpsn;e2CfQg_ZMgron!^? z)Hb}zw$y#HOvARUF7^i?e@{aI)h#;fSnh%)3-@HB7y{nC0Nwz64BjJ~Rh}%S1;AqZpr$dihlbuu z9vv9}DnI_f@h{5jf2hU3MAk;Wxuq#GzOkFUg@J|x}ovC9L z2ip<=#ls2!y>+b{O~dF12#?Q1Y97AuE?y^5H0N}kB3J$PtHMpYy}C^?L{Y(0VuOIa zq@0o~7lnw=qKfFE^mq|;qL>qERL1LZ*L0NQ-dhz*Ikk7*>)tEFDA&25yAWv!-WQRv zr5_z4Nr205e|&^d9@hodFPFbdiDWh43|DkSnue#o152^4`)&k4xL@2{Cf5se2&R+S4Y_!mxU|awBkN@aT zM9rhAGJ$F1fT@I}b3~1=bmf+a0al2i|NO^)Zv5>(|M6cSEOO1TiW`gwWuegl&lbRG ze~x!ZRfw8^w^GR^A$bFeZ+s&nn(zovlfU|9M_Loi5;I|>vYVSqH4KgjM;2J{P@in) z%ubn8e=R{H`*M7DxgcQ68gy9T+6ch{!z;K6yM;a!VI#m_+g-Aa)82&EGLa|vHO7EW zF0-GUh?}G515}|F-X|7VTipFV+{p&^gCM*wAMsOUe8~1%mVFU^s5rk4Un7DJ*s724 z%ZaaR%+b&o3?wNqmELm-#2}&oyBIF7P=`i)f30gwRj|A|zu(tOL?XBp^G~pzk%b;W zeZq{t02SzdlLGFjaBiGgUsNRZ;l2u}iVA`cqeZOYp)rT?U?AN45s?;0>&A1b+MZv= zm<;ZNu7jM7P)qVX*xe}3aD#&n!E#4d6}d-5vR;W<))}Q3iB8U87lEeeYWOu^P{@0O ze^nVs$Bm|#Wt(%;oM2AT-A%Fbon}+48Bk-;0M1zWWLA`yu46>b{uGJHHD&o(m7F-Nv4LM$Rr zcU&VRsROdSe}RTKu>;Ob?LvA5e>*Zxr%bQHjrOFGw9xJJp;KWj4cA!Z)<&NIK?WZ# zk!5wf?VP&m;&|mWcUx)u+Tu22F^QT&4mI*S(He0&@bnh+5!xRVpq;!!LH8EM9jro> ztmJlrP06uBq_uE53p$}v3`OR0xj|mGGjY&;SKLt?w-OZK`^}lLtg1{9e+HISE*bG& z2edxCnFN2|1!>k`4D2DRTEGTv+{h}j8n!W50C6n3&liQWe;VOrn72imZBxhxCy}DD{OlRjZAWwh(8Y zPk#Vzm9pJM#G3dW64VycchF?(MyDxm_X-;K?lsH$?y?SxN znLQYeX2{0&aY7*+f9}c&e~8xMdn{nsbTSdu+jj>eb!M6KF}HjG`3PVs=Ogc-b&PJ7 z!(m#w#Ij}fZeuj)EYIhaStebZ zq0j7zEv@y7e@flK9t5b6>yzNc<%?%*y;?$P!Wdp{s#J1~d0MQjbAl{K`*6F;2Cj5u zRvv)n7fiW#V-7n4_)DJHBK+X`LMCQT*fyhw@alb#Y-#JogSCaHR$F%$CUKK9)rMY|WqFTl}w8$-R)=)Q$HlfWxOv2wAbf0U_r2#Vqot))V?#%QdY!#=J_;d1Uf zjp0Q1^!&tao`&a4$F91WzbxfOVz-zeDQ_eF6E7%;aC5Ty;J-=2%a=zZTc`FTt6Onl zXwsSXumJ9uC9u@9XY(<9?fN9W^0z<*aQSZ^fSu@n3k}^I9BHhR|C_j&VSn8evFqj0 ze@(c`u1@U1=!M~Iv)^9@*c9xQcW0;2Vi)rHDU`mz&6FS2;@m6{2_=raigqKI6 zA<>b>Bh$miz;;~IHEnpdn3>FYWuSJ`f4O0fXNKog`@i&1AND!^8_b4>bNmx()acyV z@AwxLpJU*mxE&~s_Yyb_+YCO_)Ccy+>k~IQ2vW+NyHp*oQ-?BuVn*Ct3enNBEdFs+@!BUFG6Vl2KTKc_Tu3Z-TtLaNkr0t6??EOw-z{fe)bL*<>*fA{o} z*=fO$CXLd&aamyC2zR9rwKrEG2i9>uDIgEq+A=YkE!%A@m=H_o!uSp)f9;WJ!4#Ie zU=jgp+_G{C07gkDyrIoJ2T_1cFJZuSJ5L0ZI;QnZrU7A?Nw{qDofM@Vh**cwZapEm zZC0-sw*)|l7}qhjOzlnmy;$kQozKS}s_%OZOV76TMn`22#L5^`Xs^2#po-2G_F_p% zg5W@U7if|OYY|kf2Yb*se^k3EJVi@=A1f6L7Sq4qtoM;g>096T{njf&h#GTl8@Qcc z2dtQVPvbR3yg?3Zws}Ms7%*`*203OFVzN;~)QmDA{1q~A-Yev~=t%*ZCiMguXW~cc zMUapKL56QhB8f0tWoAo%OEDkVbvbDJ_eFOnB@2oeH)X1G50-uIe_VHBfT1J6O{H8E zx8by(o-J*3d**mErw@^pN$F4`Yu@0(rGtCNjf_gto%BQ5->B{!6>-(vqas7_g6?WB za6vyYE7Vr|Lbuh=S;7EDL}mblhAlO*O`nmMM8iTgX+)w$&&ev?Z}Cyl%J2^E_Wb~m zPS7wyErkr?f~>H&e^NP$?MK3ef$@duXVi^G6O zbSpF-qCj?j;V|gjeIsMZ>TY3NQ+%}era(ky9&ks(o*jQ!O)YssjURYvy4y%DBns8E zG|YDF#JwS>c=07H@NZm}6dyrDuL7O{vL>Mb?2Up}lT;51f0LFNOqgNaQm^mjan1vx zp!=~+i*KTen!}wOu`9Ur@8%j-ALi$J&UENb`m}8nqOF1Xm6h5+5U9AQ{yjOf`- z4483Cc8}a*KWAQmy+ZI@gh`sQlDENL7rmu2Wu+dN?~XRjGq4M?t9V7p4OqQ^CN`4O zKmYMxokG5cf7ZlCS%Qa4)539`l90sGIV%lY*~vgzsXv!!T7V?OS$Rb&7)%pPuPtR8 z$~n^_)&%D~pB@ZQcy~*_0o3mk&MWr|4I3xSv4TT#@Lj{4&0V*TGp!xR%6AUIv7Gf4 zxgRp)Xgd zB?%Eg)em45G=h|}ZU9HuU<$8p^NlTM7)9)p5Ok${O0JJD=M~26#JJd@WING}r&=c{ zOCln`f35>s6x@g$37p*$w6| zsYB)cP%hTJa^Zp0@N|tnoga;fZJUij&a$f4VvBkl30wt0NLc9|eAur2s1gW9F`;V7 z0g)Afjgqn!0U&BG_1|*lL!Ay6*|#pSSq(#va10{Nw zy^?&rf@^iJJ-yZf31g~ThS8_NTstI;nKN?BaZCjgU3}WhgzSNBMwdWY>Htf|HIk=E zC+W4z;te1L=i_lDA*zo8iO4J@ZXo|5QsXn0NP5Vob#M%>5K{V4D ze-vrzNKmz$w5P&m=UBM#)8cvx!>eB)cuzoInO?{V|w$UWsUn_jDTSS#+2_gV+*(sf8rOD ztp^p9GGoMFz@3Fi zZ4xv3o`D!EoN#=QFg5EeNSzxdX z2Bbzx$l>6ts*|wCDk?K?@Zu@OURysE23Ux>-7EZ|=q-&p8Kwq?Yo8(+Qq1C9*y~v! z60bOiEy>$H=FHf&$Fp8Fe*pJHlQWS|%3>U+%z2w)8?`5;xcXD6)ktN8BwuTaK%*?I zDKz;QU0SYg4MxLm_oJe43AKfQ&wdaEXD}vQ3L~+))2U-y1J4ne?d`c0{MEjzc-5*^ zc|!f&#z2j{DcdB>gVg1!AJEd5U_=N~QAE9}o>i4Hbn`^l@%sQ3e@#%asSbo1bTVd!5dMuvHHB6QT)-W&*_-Xnl>O#y36;fG)3MmY>uat!n|+Ce+NU;P|iPPe$lS9mme4T z^Lf6`Jy{z0vuZ4D)X36GSwd5;B7F_=q+0A*=WH}yizpcBo;~a(3Mz2x29dZ_#$S-< zuvF|LFWf1BzLnx3s`V1hn=2)=9KS-ntf-L103GPIvQ$r$-qOIe!Z4r#h8kBM;S7iy zi5~MslbS*we^3rAQ+oePri5WvMD@y%27<;Y34)9{d{(Xcy$rHktI9j*$UuWA2bNAp ze7B*O6-F+2+PSuiPl}ccLD7*0Pix@#2JZMKptB)`)(jM%1ed_F@W4e)BddeEC$QF0 z*_vYWurdlWayS_T=9R^i#zPiqrM1ACiaOBM&Qbpse-nD@bfZ%#Gv766u7mCwOgd;(WgHR+IF2>?wKOQlUtz+K_ zdIU3ec31>=cCP8eyw@>e3^2ayIK)m~5fic6pDs_P#{qH{Qx@_);BC)sP-~1k@cVso z($U=komTc3a*_|HtqMw4=uz#0^5Dc~JgM9Ve@2yP$J%VO!(#z}D;{^J?>g>eQkd}# z()vfB#9B>tUs!j{Ry%{A*o|zj3SbbZnsLINcn?ZAfdXp ze@3aVYfU?#jsY#b0V&r(9#BfP%E)3k7$6URQ3(?&spQ0$b1$v_MInF6|Ug%4FIA#!$pBN8Upq;&>c&2!bhsfe% z^76nWLfB?xYdBshc~wG-3aCrC(1R=)e-PU=*sbE`daPI6(ogn(Z%Bh_9d`1r*1xs` z!kEt`bi#ZItc;@WcP!&P5+u0Wk2Di?BWdxBTeKqxYMC=v_*YSf5u^ieZAirnh(S_1 z7huaX5{;xiioT$4#f11cCH4il{7g%ipb4$%*C1QIc-lt*yZYQli|g^3Eg4)fQZN$UDnzfu23rt@ zc+4-G3oPH#t8kmA@?=EG%IRgmnTW}DZo-7lk?DddGhC5W12bwS#Xcvay0$ZP26mrd zW;+N?7xd1GH|}97sfRA*GAWhRe->pS7^O<;;mr1?(~e4Nw?`$lHB`!|O}$SUwe?_S z)JAg|wR=DrwX2p<%ewwPWz_C?ZtDZ5PmpD1*v_E24!CrunTpyyta48q1#a$%p# z7Rgd{|NL{e8&%iG9%4o7w+r5M07pYNM}QVKhU9`}fNhA%vRnjq3jG(4e-V}HC9eo& zctF>MpMmr=T$t!=0+J$64i+*sH(Mx``hs4hJQb7-xx_En><`|%bF{a-v&ktMM_!7) z%9{x58m_T?v++p22NR28)@V>s$_G0vnj82ZZd>s7%MC2*9&&MuE&&8`Zc-N}NU;?R z(cD{ge*WiYn)j!(Qx-y6e~>Pbn{YZhyJKD(}$Kdf0A8*1EpnSzIIjz z_E=7(%gvI&8GDXC>D7n-aU_9SWLFSbQ;G0lTZgLbo{jR}o~kZtEOt?QV1Q5n_*93iO&W4uj9*b*=M^3&dfE< zK_6ekV{F%$v)n0we@^*KWtJ@2zI0|ku9)d)Qno{}vZhQ>Vntwx+zq!7jSiUEQwj+t zsL^0ZB+pXi_9Kl_MBa(f~q^CvM@vPv^ zD3J*{02JSc?}M8#6;|^j?S%qj;NZxB^9-vJq|ryDC}B&%e_EC91wxtNeFaSno!h7@ z^r6?eF(1u_{SvX;G9Su!h+dU+f&03Kk@eSI!}Ml1fP3Wpn1iwDh~0aKl~t%xRo-ZD zw&v5W1JoQF#?m8ZlqFiwGkHkM8|K%?VC*ulV<4hCMOMrJVd ztf?{2`<&eie;WHSpe#aVauw+PpgJw3D9D@IC~?#<59yRxH&G=#MM33e z6V%9=`v(Y>sHN?GeKZceqVGWceojIdx(~@{mje~CT@S74i*nSf7>bBcb^T@0sov2XtPJINL&_!-5SM6|0Yoj%q?*9|06zC$FUAV$|Vp`DcbR{0!wt_Kq#XU0H9 zf9ask!r1mCH!<=<#^fQ@&A=e5yYM3sS~6lW&nXHd1T9WfTKpq6KZYBdkSfubN2R4< zgi}EtWV*Tqtx(j(=Gsdo6<)N2X5K*4!Yp^pZNF{pDk#CvX%GA9?+~InVXfLI?jit!IMI{A_b{(+^XhZAVD|n zhN>vS4Cw&%{4Jhz1mwYG9PC<8us#91$73uow;_Rra{aknmL&){C;|wrztwQZX0iq8!=sL8RGwiNke=I^q zaj2|Aq@v0^I?lIiMe3@$*s|B!578P^?TCY-Zvit#GHeb*p%IxtC~B!?_8+Ji-26xo zII8GqlGM&HS201PjQUuVl?D+8wCT72{=$=O5`qDTO&%!eALBjZ-cu0=67AVn@oupW zp7TxIdJ&umvk)5&DHE-LLCIe)DH~kI)H-|*6dUNy z+;n?2Z4*+y0mT&gFJr~x$2=w)KJn9K7@p%{C@+ubxTEhp*a#de@YBpoLtni)6W8$m z6+YPb<}%Hc%j0krvdO;Se96u( zQ*?$%f1ThGlxqmkhN6W9eusnD*a$#A*#>%R>e`+?s>tm|(Celgr6`5&((H^q9CmCG7ll&%$i_aLP_1VbZb1= zgOcZ@x2Sux5g_gmPe91o&B``!+Ab`ZvT>l8!3_kNk|rD zIZ;>5xSJF}T-I9n*221A;0LPQz!E!@lUlGt7J?wqS0#qjWf_dO((iKFy`}9cyUhcy zH%Xp3Ur&^W$F@E`bMtBcMXYH@`EL zO;D@p{m*~@UwNT*^1f4&P)L|Qnl7iMK(_R$_onEyt4lLS-NEU{rJJy|KCh=F2xtB< zD`$4TnZC``>Ybmi*?ILxF`*2Zl~|E+YW*M%gP=2ewnSyle|vILQwqA8^-o}Bf;f49 z(z&peAFG9RSUNfRe>_NyQVyoG^8lf!yrexj{l`asR<~1Y`OxHW5K_*AzzK@zPgpp- z{^pS!E~cDnjnZsD%0HbjZkdaGa;5+1ZhB8SjFUKy`od+0Ipqi-h{41qhvU{yxzrN$ z{L}|rx{U+Qf2VOqDRObD8It_f`d6g1nEUxfeDQJVYDWHFAv|=evs^l!n?`5+oLl`f z>TS;R{EzZGod43=!YXQN5Z#PnB%=xR5YjF&<#f0#f8f{Yc&_Dv_`9^u+4E(fpFM!PlFnJQJ<^+p>}1cNwx|+OhaUf1{uC$(MXC&cc^3Wt*S*>AQCM zApht+sF9Yz8+BWo&k>5lo=8D`C{(>%HX(mt0s$o|D{rq6rWpDXnbzN|L#Bd(Z@mjy zp^n{7f3E)U4$dyv@WPkC7$M4Ccy!RoUob&ib3K1akmAA5{Nm!IPF_tR)s4Yrr{|4M z&o|Mj9O?T{GMPvsBg_`#O@4cf&QOeZx$E;ybX^&>BCyJ^-!2_L>kqryw;Xq)Zx;z+ zgN-C%aU8N9pMqgvBg7#Iuqx#Bh=WXfDL;Zqf2^Tqof}tKhc<}U)qWK>$Qoc6UTz`m z#}KQmW!1}>fRQv)!CEd`QjeuxYfHKpC5vcM6gqC%fKpvn%-*>h2}r_j@117zl?N#m z=&s-Lm_|?+b8W|t)qyI{@`d^={_7tNop>W(SRiomUjl(Y`U{AWjCEE!u(`~)^>C~q zf1&HoJB%Scds+V||K#}F66DEANmp< zS0?bmM9}U8Z=JIxgzZF^PqTofH7K6Xr{hZ*jkgnvxU7Ng%p%qYT3bXmS#pMLU4B8g zyFspw%uFlf${nGO;7_r*352*){tm|8_YUO|L7~<0oIdU%D?CcX08t z+lSfb-B`P9JxTO*YgZWmpML2YR}Zf&)*kssdj~Zg9g;W>5*HT~CucY{)LyT!f4!qp z(S^ICk`GY=5bUv-4`Yi13B_@WTnb$ccZJ(k2;^Kx+Z>$#cD@Dky->MBU5o4~?@rB} z7giWC`Tl!Q)9O<`Rc`F2-6y_u?3b;q0!aMBLe27JpHlfsWI{{RsWe2t?=*5d;Y-`6 zq*=ZCDQQn{e5#N&4HIU{38QX~e_bibxYfUWV|%C6RSAq2D`o+$?#p98V$8>E-L|w) zOWU<^wLPiM!1|Hn9x|x+*0BI9PSMqqBbK>#o!Yv&aG14--@ZLvQb?zkzKB%k!dIuvC|%8R6Q zeUA2#3eR5_bG0`nfnF)F&F+`{;pG3%!_-Hy3))PHK&AGgf3-I{x<@~%to7Rd|4OVc z`TwiTb!N_w$T+;FeA=2TfAwNbDj^0%);`;QhJnvn)IdT6rAa`t1x?82-wYNDYfq=^6>&^DG`v#+RX!=spcUkgle=%N_m9@zk7cynWmhL@3~*d@ zQccOX9Q)bT4NQC-npoTx%2;G9R{>qM7*yA3+Pm%ztnMG3iGN+hf2=OzQB{y}rzwp%B!IxX@Jt67HnsuIyE1%mU}<1!_(3b~d+Z{V*G6j6c?GW1tw zZ~iFPRRwq#Va75{?_oNXnF>r8s~Je0IP8oKgESLIh|JGYVQdVe5VHywR~Ep+*!4Gd z#;)*iu}rGK;H*rSe<%ijGyeTSrXWzcwQr^KUAd2f+{afl9XdFYL4dgosFZ~)%A~!r zcKz4M^xCZ80VLk#c&-ZTs^y!@i0#?cbbP6Ecv?R&lJSi?7Ty$yw&$_^AuJmKHF1K^ z`)Ozr9&Nnem3z>OZnp(x6r+k7s*z~T7nB2!tv&qHYq= zqd&hF99l$&7Q?q%N-)o|2;v_9F^6d`$(H&XjZG2sGi_@vptb%}iElOKBx>=kMcss2 ze5>YXHL;FGlH1o@qt?YBDaA>UKEuVR98k5Ptl6y;n`akwQ-RxhqfnnGJwzFF?t`qm zDU>6Z{A|0oe-DpX@?`XI?VZVFE(fw|!*zbWj;VAdlE(ofEQT(*1;2liPcLlo8@=lt zE{oyT^+v?UY35|z{QlSbpQrEFSZ_$xHAkO_DdO&1e3$(U1Yl41Y9Bs~rsH`%eV;4o zuX4H~oYE+6_$L3LOMX6|+^<9Xo4|Y|p@2lq++07Zf6SMqIl@=;6=~lN`A7e}{Ji{l zL$B5&Dj!xBoPrqmVkx>8+!gn)biPBv#CS-*zML+B&;Gs7mAc*<| zyJ&Vlf9xip!8svGc)+NOnd67u1UU32K)^E)QWp^R!)^i?{!BnPiIo1n-vs+6M1wN| zj{r?$7nhG8bq~U!_W*?$1VJ;W>wXU^dqCIOgHVANU#Z zvG2P$W&NmoFu1ZDAWSd`Ts+Wz)IAtnR|Y=ge;n)$79D%Ama4ppxg2DaC$TTXdG>o? z--E$5WsoE+;!fGHf7Cq~Tu}}43CGqbyE%90$x%gY`&)tZxL zf71MANB7bR!?|N?P}cld`f&WIof$tVKStxvA-xnoc}E@%yq`SuAO95pkN@L0Q`l3? z$W%EoHH5^EfBUES=g_jh&7H*5M?r?07usni2J6=g?zB64*WYY%CuNad<=

    GZxD& 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

    %_gD?O{Ab*cJY>*KMb&Ri?lTc z5F(AhC8wBY#{k*@Ffaq)fCPX7{satwNt#g}>H1Wn4@rM(0nc^PU^H_q$F+^cp+{SKK^$asc zA$uNDry%HHc!GvB4t%$u(_LAY4{k7QAhi9Px#zE8>oH2pA{≪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 delta 53304 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 From 242a1ce108f8be0ae4f59376ffbc92632d2a3e66 Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Sun, 15 Mar 2020 09:09:59 -0700 Subject: [PATCH 07/17] Update vdu.asm Removed a hack in VDU driver that has existed for 8 years. :-) --- Source/HBIOS/vdu.asm | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/Source/HBIOS/vdu.asm b/Source/HBIOS/vdu.asm index e1b220d6..bc888aa5 100644 --- a/Source/HBIOS/vdu.asm +++ b/Source/HBIOS/vdu.asm @@ -461,21 +461,13 @@ VDU_BLKCPY: LD A,31 ; PREP VDU FOR DATA R/W OUT (VDU_REG),A ; DO IT LD HL,VDU_BUF ; HL POINTS TO WORK BUFFER -; LD C,VDU_RAMWR ; LOAD C WITH VDU WRITE REGISTER + LD C,VDU_RAMRD ; LOAD C WITH VDU READ REGISTER VDU_BLKCPY1: ; VIDEO RAM -> BUFFER COPY LOOP CALL VDU_WAITRDY ; WAIT FOR VDU -;;;;;;;;;;;;;;;;; -; INI IS NOT WORKING FOR ME, GARBAGE DATA READS, NO IDEA WHY -; INI ; READ BYTE, DEC B, INC HL -; IN A,(VDU_DATA) ; BOGUS READ TO INCREMENT VDU RAM ADDRESS!!! -; JR NZ,VDU_BLKCPY1 ; LOOP TILL DONE -;;;;;;;;;;;;;;;;; - IN A,(VDU_RAMRD) ; READ DATA BYTE - LD (HL),A ; SAVE IN BUFFER - INC HL ; BUMP SOURCE ADDRESS + INI ; READ BYTE, DEC B, INC HL IN A,(VDU_DATA) ; BOGUS READ TO INCREMENT VDU RAM ADDRESS!!! - DJNZ VDU_BLKCPY1 ; LOOP TILL DONE + JR NZ,VDU_BLKCPY1 ; LOOP TILL DONE ; SETUP TO COPY FROM WORK BUFFER TO VDU DEST POP BC ; RECOVER THE COPY LENGTH From d1abba5378eefea5ffe427f10e19ee2a236501da Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Sun, 15 Mar 2020 09:44:15 -0700 Subject: [PATCH 08/17] Fix CONSOLE Constant Rename CIODEV_CONSOLE constant to CIO_CONSOLE because it is a unit code, not a device type code. Retabify TastyBasic. --- Source/CBIOS/cbios.asm | 22 +- Source/HBIOS/dbgmon.asm | 6 +- Source/HBIOS/eastaegg.asm | 4 +- Source/HBIOS/hbios.inc | 3 +- Source/HBIOS/nascom.asm | 10 +- Source/HBIOS/romldr.asm | 6 +- Source/HBIOS/tastybasic.asm | 2614 +++++++++++++++++------------------ 7 files changed, 1333 insertions(+), 1332 deletions(-) diff --git a/Source/CBIOS/cbios.asm b/Source/CBIOS/cbios.asm index 065e81e2..c3a0b49a 100644 --- a/Source/CBIOS/cbios.asm +++ b/Source/CBIOS/cbios.asm @@ -192,18 +192,18 @@ LD_UL1 .EQU 0 ; -> LPT1: #ELSE -LD_TTY .EQU CIODEV_CONSOLE ; -> COM0: -LD_CRT .EQU CIODEV_CONSOLE ; -> CRT: +LD_TTY .EQU CIO_CONSOLE ; -> COM0: +LD_CRT .EQU CIO_CONSOLE ; -> CRT: LD_BAT .EQU DEV_BAT -LD_UC1 .EQU CIODEV_CONSOLE ; -> COM1: -LD_PTR .EQU CIODEV_CONSOLE ; -> COM1: -LD_UR1 .EQU CIODEV_CONSOLE ; -> COM2: -LD_UR2 .EQU CIODEV_CONSOLE ; -> COM3: -LD_PTP .EQU CIODEV_CONSOLE ; -> COM1: -LD_UP1 .EQU CIODEV_CONSOLE ; -> COM2: -LD_UP2 .EQU CIODEV_CONSOLE ; -> COM3: -LD_LPT .EQU CIODEV_CONSOLE ; -> LPT0: -LD_UL1 .EQU CIODEV_CONSOLE ; -> LPT1: +LD_UC1 .EQU CIO_CONSOLE ; -> COM1: +LD_PTR .EQU CIO_CONSOLE ; -> COM1: +LD_UR1 .EQU CIO_CONSOLE ; -> COM2: +LD_UR2 .EQU CIO_CONSOLE ; -> COM3: +LD_PTP .EQU CIO_CONSOLE ; -> COM1: +LD_UP1 .EQU CIO_CONSOLE ; -> COM2: +LD_UP2 .EQU CIO_CONSOLE ; -> COM3: +LD_LPT .EQU CIO_CONSOLE ; -> LPT0: +LD_UL1 .EQU CIO_CONSOLE ; -> LPT1: #ENDIF ; diff --git a/Source/HBIOS/dbgmon.asm b/Source/HBIOS/dbgmon.asm index d9b94dda..ddfe411e 100644 --- a/Source/HBIOS/dbgmon.asm +++ b/Source/HBIOS/dbgmon.asm @@ -819,7 +819,7 @@ COUT: ; ; OUTPUT CHARACTER TO CONSOLE VIA HBIOS LD E,A ; OUTPUT CHAR TO E - LD C,CIODEV_CONSOLE ; CONSOLE UNIT TO C + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C LD B,BF_CIOOUT ; HBIOS FUNC: OUTPUT CHAR RST 08 ; HBIOS OUTPUTS CHARACTER ; @@ -842,7 +842,7 @@ CIN: PUSH HL ; ; INPUT CHARACTER FROM CONSOLE VIA HBIOS - LD C,CIODEV_CONSOLE ; CONSOLE UNIT TO C + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C LD B,BF_CIOIN ; HBIOS FUNC: INPUT CHAR RST 08 ; HBIOS READS CHARACTER LD A,E ; MOVE CHARACTER TO A FOR RETURN @@ -865,7 +865,7 @@ CST: PUSH HL ; ; GET CONSOLE INPUT STATUS VIA HBIOS - LD C,CIODEV_CONSOLE ; CONSOLE UNIT TO C + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C LD B,BF_CIOIST ; HBIOS FUNC: INPUT STATUS RST 08 ; HBIOS RETURNS STATUS IN A ; diff --git a/Source/HBIOS/eastaegg.asm b/Source/HBIOS/eastaegg.asm index 66982bee..35c4c982 100644 --- a/Source/HBIOS/eastaegg.asm +++ b/Source/HBIOS/eastaegg.asm @@ -175,7 +175,7 @@ mandel_end ld hl, finished ; Print finished-message ; GET CONSOLE INPUT STATUS VIA HBIOS waitch #IF (BIOS == BIOS_WBW) - LD C,CIODEV_CONSOLE ; CONSOLE UNIT TO C + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C LD B,BF_CIOIN ; HBIOS FUNC: INPUT CHAR RST 08 ; DO IT @@ -215,7 +215,7 @@ _putc PUSH DE PUSH HL LD E,A ; OUTPUT CHAR TO E - LD C,CIODEV_CONSOLE ; CONSOLE UNIT TO C + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C LD B,BF_CIOOUT ; HBIOS FUNC: OUTPUT CHAR RST 08 ; HBIOS OUTPUTS CHARACTDR POP HL diff --git a/Source/HBIOS/hbios.inc b/Source/HBIOS/hbios.inc index d47d53f9..97dc9d14 100644 --- a/Source/HBIOS/hbios.inc +++ b/Source/HBIOS/hbios.inc @@ -85,6 +85,8 @@ BF_SYSINT_INFO .EQU $00 ; GET INTERRUPT SYSTEM INFO BF_SYSINT_GET .EQU $10 ; GET INT VECTOR ADDRESS BF_SYSINT_SET .EQU $20 ; SET INT VECTOR ADDRESS ; +CIO_CONSOLE .EQU $80 ; CIO UNIT NUM FOR CUR CON +; ; CHAR DEVICE IDS ; CIODEV_UART .EQU $00 @@ -96,7 +98,6 @@ CIODEV_SIO .EQU $50 CIODEV_ACIA .EQU $60 CIODEV_PIO .EQU $70 CIODEV_UF .EQU $80 -CIODEV_CONSOLE .EQU $D0 ; ; SUB TYPES OF CHAR DEVICES ; diff --git a/Source/HBIOS/nascom.asm b/Source/HBIOS/nascom.asm index 28bbee1b..1449c741 100644 --- a/Source/HBIOS/nascom.asm +++ b/Source/HBIOS/nascom.asm @@ -1349,7 +1349,7 @@ TSTBRK: PUSH DE PUSH HL - LD C,CIODEV_CONSOLE; CONSOLE UNIT TO C + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C LD B,BF_CIOIST ; HBIOS FUNC: INPUT STATUS RST 08 ; HBIOS RETURNS STATUS IN A @@ -1363,7 +1363,7 @@ TSTBRK: ; INPUT CHARACTER FROM CONSOLE VIA HBIOS - LD C,CIODEV_CONSOLE; CONSOLE UNIT TO C + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C LD B,BF_CIOIN ; HBIOS FUNC: INPUT CHAR RST 08 ; HBIOS READS CHARACTDR LD A,E ; MOVE CHARACTER TO A FOR RETURN @@ -1387,7 +1387,7 @@ STALL: ; Wait for key ; ; INPUT CHARACTER FROM CONSOLE VIA HBIOS ; - LD C,CIODEV_CONSOLE; CONSOLE UNIT TO C + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C LD B,BF_CIOIN ; HBIOS FUNC: INPUT CHAR RST 08 ; HBIOS READS CHARACTDR LD A,E ; MOVE CHARACTER TO A FOR RETURN @@ -4463,7 +4463,7 @@ GETINP: PUSH BC PUSH DE PUSH HL - LD C,CIODEV_CONSOLE; CONSOLE UNIT TO C + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C LD B,BF_CIOIN ; HBIOS FUNC: INPUT CHAR RST 08 ; HBIOS READS CHARACTDR LD A,E ; MOVE CHARACTER TO A FOR RETURN @@ -4706,7 +4706,7 @@ MONOUT: PUSH DE PUSH HL LD E,A ; OUTPUT CHAR TO E - LD C,CIODEV_CONSOLE; CONSOLE UNIT TO C + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C LD B,BF_CIOOUT ; HBIOS FUNC: OUTPUT CHAR RST 08 ; HBIOS OUTPUTS CHARACTDR POP HL ; RESTORE ALL REGISTERS diff --git a/Source/HBIOS/romldr.asm b/Source/HBIOS/romldr.asm index 844a1de4..6ce3ce6c 100644 --- a/Source/HBIOS/romldr.asm +++ b/Source/HBIOS/romldr.asm @@ -1050,7 +1050,7 @@ COUT: ; ; OUTPUT CHARACTER TO CONSOLE VIA HBIOS LD E,A ; OUTPUT CHAR TO E - LD C,CIODEV_CONSOLE ; CONSOLE UNIT TO C + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C LD B,BF_CIOOUT ; HBIOS FUNC: OUTPUT CHAR RST 08 ; HBIOS OUTPUTS CHARACTDR ; @@ -1070,7 +1070,7 @@ CIN: PUSH HL ; ; INPUT CHARACTER FROM CONSOLE VIA HBIOS - LD C,CIODEV_CONSOLE ; CONSOLE UNIT TO C + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C LD B,BF_CIOIN ; HBIOS FUNC: INPUT CHAR RST 08 ; HBIOS READS CHARACTDR LD A,E ; MOVE CHARACTER TO A FOR RETURN @@ -1090,7 +1090,7 @@ CST: PUSH HL ; ; GET CONSOLE INPUT STATUS VIA HBIOS - LD C,CIODEV_CONSOLE ; CONSOLE UNIT TO C + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C LD B,BF_CIOIST ; HBIOS FUNC: INPUT STATUS RST 08 ; HBIOS RETURNS STATUS IN A ; diff --git a/Source/HBIOS/tastybasic.asm b/Source/HBIOS/tastybasic.asm index 7d009815..243cce39 100644 --- a/Source/HBIOS/tastybasic.asm +++ b/Source/HBIOS/tastybasic.asm @@ -11,7 +11,7 @@ ; ; Tasty Basic is distributed in the hope that it will be useful, ; but WITHOUT ANY WARRANTY; without even the implied warranty of -; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ; GNU General Public License for more details. ; ; You should have received a copy of the GNU General Public License @@ -24,70 +24,70 @@ #define dwa(addr) .db (addr >> 8) + 080h\ .db addr & 0ffh -ctrlc .equ 03h -bs .equ 08h -lf .equ 0ah -cr .equ 0dh -ctrlo .equ 0fh -ctrlu .equ 15h +ctrlc .equ 03h +bs .equ 08h +lf .equ 0ah +cr .equ 0dh +ctrlo .equ 0fh +ctrlu .equ 15h -#ifdef ZEMU ; Z80 Emulator -tty_data .equ 7ch -tty_status .equ 7dh -rx_full .equ 1 -tx_empty .equ 0 -TBC_LOC .equ 0 -#else ; RomWBW -#include "std.asm" +#ifdef ZEMU ; Z80 Emulator +tty_data .equ 7ch +tty_status .equ 7dh +rx_full .equ 1 +tx_empty .equ 0 +TBC_LOC .equ 0 +#else ; RomWBW +#include "std.asm" #endif - .org TBC_LOC + .org TBC_LOC start: - ld sp,stack ; ** Cold Start ** - ld a,0ffh - jp init + ld sp,stack ; ** Cold Start ** + ld a,0ffh + jp init testc: - ex (sp),hl ; ** TestC ** - call skipspace ; ignore spaces - cp (hl) ; test character - inc hl ; compare the byte that follows the - jr z,tc1 ; call instruction with the text pointer - push bc - ld c,(hl) ; if not equal, ad the seond byte - ld b, 0h ; that follows the call to the old pc - add hl,bc - pop bc - dec de + ex (sp),hl ; ** TestC ** + call skipspace ; ignore spaces + cp (hl) ; test character + inc hl ; compare the byte that follows the + jr z,tc1 ; call instruction with the text pointer + push bc + ld c,(hl) ; if not equal, ad the seond byte + ld b, 0h ; that follows the call to the old pc + add hl,bc + pop bc + dec de tc1: - inc de ; if equal, skip those bytes - inc hl ; and continue - ex (sp),hl - ret + inc de ; if equal, skip those bytes + inc hl ; and continue + ex (sp),hl + ret skipspace: - ld a,(de) ; ** SkipSpace ** - cp ' ' ; ignore spaces - ret nz ; in text (where de points) - inc de ; and return the first non-blank - jp skipspace ; character in A + ld a,(de) ; ** SkipSpace ** + cp ' ' ; ignore spaces + ret nz ; in text (where de points) + inc de ; and return the first non-blank + jp skipspace ; character in A expr: - call expr2 ; ** Expr ** - push hl ; evaluate expression - jp expr1 + call expr2 ; ** Expr ** + push hl ; evaluate expression + jp expr1 comp: - ld a,h ; ** Compare ** - cp d ; compare hl with de - ret nz ; return c and z flags - ld a,l ; old a is lost - cp e - ret + ld a,h ; ** Compare ** + cp d ; compare hl with de + ret nz ; return c and z flags + ld a,l ; old a is lost + cp e + ret finish: - pop af ; ** Finish ** - call fin ; check end of command - jp qwhat + pop af ; ** Finish ** + call fin ; check end of command + jp qwhat ;************************************************************* ; @@ -99,7 +99,7 @@ finish: ; 'IF' IS FOLLOWED BY AN EXPR. AS A CONDITION AND ONE OR MORE ; COMMANDS (INCLUDING OTHER 'IF'S) SEPERATED BY SEMI-COLONS. ; NOTE THAT THE WORD 'THEN' IS NOT USED. TBI EVALUATES THE -; EXPR. IF IT IS NON-ZERO, EXECUTION CONTINUES. IF THE +; EXPR. IF IT IS NON-ZERO, EXECUTION CONTINUES. IF THE ; EXPR. IS ZERO, THE COMMANDS THAT FOLLOWS ARE IGNORED AND ; EXECUTION CONTINUES AT THE NEXT LINE. ; @@ -108,10 +108,10 @@ finish: ; DOUBLE QUOTES, OR IS A BACK-ARROW, IT HAS THE SAME EFFECT AS ; IN 'PRINT'. IF AN ITEM IS A VARIABLE, THIS VARIABLE NAME IS ; PRINTED OUT FOLLOWED BY A COLON. THEN TBI WAITS FOR AN -; EXPR. TO BE TYPED IN. THE VARIABLE IS THEN SET TO THE +; EXPR. TO BE TYPED IN. THE VARIABLE IS THEN SET TO THE ; VALUE OF THIS EXPR. IF THE VARIABLE IS PROCEDED BY A STRING ; (AGAIN IN SINGLE OR DOUBLE QUOTES), THE STRING WILL BE -; PRINTED FOLLOWED BY A COLON. TBI THEN WAITS FOR INPUT EXPR. +; PRINTED FOLLOWED BY A COLON. TBI THEN WAITS FOR INPUT EXPR. ; AND SET THE VARIABLE TO THE VALUE OF THE EXPR. ; ; IF THE INPUT EXPR. IS INVALID, TBI WILL PRINT "WHAT?", @@ -126,90 +126,90 @@ finish: ; THIS IS DONE BY 'DEFLT'. ;************************************************************* rem: - ld hl,0000h ; ** Rem ** - jr if1 ; this is like 'IF 0' + ld hl,0000h ; ** Rem ** + jr if1 ; this is like 'IF 0' iff: - call expr ; ** If ** + call expr ; ** If ** if1: - ld a,h ; is the expr = 0? - or l - jp nz,runsml ; no, continue - call findskip ; yes, skip rest of line - jp nc,runtsl ; and run the next line - jp rstart ; if no, restart + ld a,h ; is the expr = 0? + or l + jp nz,runsml ; no, continue + call findskip ; yes, skip rest of line + jp nc,runtsl ; and run the next line + jp rstart ; if no, restart inputerror: - ld hl,(stkinp) ; ** InputError ** - ld sp,hl ; restore old sp and old current - pop hl - ld (current),hl - pop de ; and old text pointer - pop de ; redo current + ld hl,(stkinp) ; ** InputError ** + ld sp,hl ; restore old sp and old current + pop hl + ld (current),hl + pop de ; and old text pointer + pop de ; redo current input: - push de ; ** Input ** - call qtstg ; is next item a string? - jp ip2 ; no - call testvar ; yes and followed by a variable? - jp c,ip4 ; no - jp ip3 ; yes, input variable + push de ; ** Input ** + call qtstg ; is next item a string? + jp ip2 ; no + call testvar ; yes and followed by a variable? + jp c,ip4 ; no + jp ip3 ; yes, input variable ip2: - push de ; save for printstr - call testvar ; must be variable - jp c,qwhat ; no, what? - ld a,(de) ; prepare for printstr - ld c,a - sub a - ld (de),a - pop de - call printstr ; print string as prompt - ld a,c ; restore text - dec de - ld (de),a + push de ; save for printstr + call testvar ; must be variable + jp c,qwhat ; no, what? + ld a,(de) ; prepare for printstr + ld c,a + sub a + ld (de),a + pop de + call printstr ; print string as prompt + ld a,c ; restore text + dec de + ld (de),a ip3: - push de ; save text pointer - ex de,hl - ld hl,(current) ; also save current - push hl - ld hl,input - ld (current),hl - ld hl,0000h - add hl,sp - ld (stkinp),hl - push de - ld a,':' - call getline - ld de,buffer - call expr - nop - nop - nop - pop de - ex de,hl - ld (hl),e - inc hl - ld (hl),d - pop hl - ld (current),hl - pop de + push de ; save text pointer + ex de,hl + ld hl,(current) ; also save current + push hl + ld hl,input + ld (current),hl + ld hl,0000h + add hl,sp + ld (stkinp),hl + push de + ld a,':' + call getline + ld de,buffer + call expr + nop + nop + nop + pop de + ex de,hl + ld (hl),e + inc hl + ld (hl),d + pop hl + ld (current),hl + pop de ip4: - pop af ; purge stack - call testc ; is next character ','? - .db ',' - .db ip5-$-1 - jr input ; yes, more items + pop af ; purge stack + call testc ; is next character ','? + .db ',' + .db ip5-$-1 + jr input ; yes, more items ip5: - call finish + call finish deflt: - ld a,(de) ; ** DEFLT ** - cp cr ; empty line is fine - jr z,lt1 ; else it's 'LET' + ld a,(de) ; ** DEFLT ** + cp cr ; empty line is fine + jr z,lt1 ; else it's 'LET' let: - call setval ; ** Let ** - call testc ; set value to var - .db ',' - .db lt1-$-1 - jr let ; item by item + call setval ; ** Let ** + call testc ; set value to var + .db ',' + .db lt1-$-1 + jr let ; item by item lt1: - call finish + call finish ;************************************************************* ; @@ -222,310 +222,310 @@ lt1: ; ;************************************************************* peek: - call parn ; ** Peek(expr) ** - ld a,h ; expression must be positive - or a - jp m,qhow - ld a,(hl) - ld h,0 - ld l,a - ret + call parn ; ** Peek(expr) ** + ld a,h ; expression must be positive + or a + jp m,qhow + ld a,(hl) + ld h,0 + ld l,a + ret poke: - call expr ; ** Poke ** - ld a,h ; address must be positive - or a - jp m,qhow - push hl - call testc ; is next char a comma? - .db ',' - .db pk1-$-1 ; what, no? - call expr ; get value to store - ld a,0 ; is it > 255? - cp h - jp z,pk2 ; no, all good - pop hl - jp m,qhow + call expr ; ** Poke ** + ld a,h ; address must be positive + or a + jp m,qhow + push hl + call testc ; is next char a comma? + .db ',' + .db pk1-$-1 ; what, no? + call expr ; get value to store + ld a,0 ; is it > 255? + cp h + jp z,pk2 ; no, all good + pop hl + jp m,qhow pk2: - ld a,l ; save value - pop hl - ld (hl),a - call finish + ld a,l ; save value + pop hl + ld (hl),a + call finish pk1: - pop hl - jp qwhat + pop hl + jp qwhat usrexec: - call parn ; ** Usr(expr) ** - push de - ex de,hl - ld hl,ue1 - push hl - ld ix,(usrptr) - jp (ix) + call parn ; ** Usr(expr) ** + push de + ex de,hl + ld hl,ue1 + push hl + ld ix,(usrptr) + jp (ix) ue1: - ex de,hl - pop de - ret + ex de,hl + pop de + ret ;************************************************************* ; ; *** EXPR *** ; ; 'EXPR' EVALUATES ARITHMETICAL OR LOGICAL EXPRESSIONS. ; :: -; +; ; WHERE IS ONE OF THE OPERATORS IN TAB8 AND THE ; RESULT OF THESE OPERATIONS IS 1 IF TRUE AND 0 IF FALSE. ; ::=(+ OR -)(+ OR -)(....) ; WHERE () ARE OPTIONAL AND (....) ARE OPTIONAL REPEATS. ; ::=(* OR />)(....) ; ::= -; -; () +; +; () ; IS RECURSIVE SO THAT VARIABLE '@' CAN HAVE AN ; AS INDEX, FUNCTIONS CAN HAVE AN AS ARGUMENTS, AND ; CAN BE AN IN PARANTHESE. ;************************************************************* expr1: - ld hl,tab8-1 ; look up rel.op - jp exec ; go do it + ld hl,tab8-1 ; look up rel.op + jp exec ; go do it xp11: - call xp18 ; rel.op.'>=' - ret c ; no, return hl=0 - ld l,a ; yes, return hl=1 - ret + call xp18 ; rel.op.'>=' + ret c ; no, return hl=0 + ld l,a ; yes, return hl=1 + ret xp12: - call xp18 ; rel.op.'#' - ret z ; no, return hl=0 - ld l,a ; yes, return hl=1 - ret + call xp18 ; rel.op.'#' + ret z ; no, return hl=0 + ld l,a ; yes, return hl=1 + ret xp13: - call xp18 ; rel.op.'>' - ret z ; no - ret c ; also, no - ld l,a ; yes, return hl=1 - ret + call xp18 ; rel.op.'>' + ret z ; no + ret c ; also, no + ld l,a ; yes, return hl=1 + ret xp14: - call xp18 ; rel.op.'<=' - ld l,a ; set hl=1 - ret z ; yes, return hl=1 - ret c - ld l,h ; else set hl=0 - ret + call xp18 ; rel.op.'<=' + ld l,a ; set hl=1 + ret z ; yes, return hl=1 + ret c + ld l,h ; else set hl=0 + ret xp15: - call xp18 ; rel.op.'=' - ret nz ; no, return hl=0 - ld l,a ; else hl=1 - ret + call xp18 ; rel.op.'=' + ret nz ; no, return hl=0 + ld l,a ; else hl=1 + ret xp16: - call xp18 ; rel.op.'<' - ret nc ; no, return hl=0 - ld l,a ; else hl=1 - ret + call xp18 ; rel.op.'<' + ret nc ; no, return hl=0 + ld l,a ; else hl=1 + ret xp17: - pop hl ; not rel.op - ret ; return hl= + pop hl ; not rel.op + ret ; return hl= xp18: - ld a,c ; routine for all rel.ops - pop hl - pop bc - push hl - push bc ; reverse top of stack - ld c,a - call expr2 ; get second - ex de,hl ; value now in de - ex (sp),hl ; first in hl - call ckhlde ; compare them - pop de ; restore text pointer - ld hl,0000h ; set hl=0, a=1 - ld a,1 - ret + ld a,c ; routine for all rel.ops + pop hl + pop bc + push hl + push bc ; reverse top of stack + ld c,a + call expr2 ; get second + ex de,hl ; value now in de + ex (sp),hl ; first in hl + call ckhlde ; compare them + pop de ; restore text pointer + ld hl,0000h ; set hl=0, a=1 + ld a,1 + ret expr2: - call testc ; is it minus sign? - .db '-' - .db xp21-$-1 - ld hl,0000h ; yes, fake 0 - - jr xp26 ; treat like subtract + call testc ; is it minus sign? + .db '-' + .db xp21-$-1 + ld hl,0000h ; yes, fake 0 - + jr xp26 ; treat like subtract xp21: - call testc ; is it plus sign? - .db '+' - .db xp22-$-1 + call testc ; is it plus sign? + .db '+' + .db xp22-$-1 xp22: - call expr3 ; first + call expr3 ; first xp23: - call testc ; addition? - .db '+' - .db xp25-$-1 - push hl ; yes, save value - call expr3 ; get second + call testc ; addition? + .db '+' + .db xp25-$-1 + push hl ; yes, save value + call expr3 ; get second xp24: - ex de,hl ; 2nd in de - ex (sp),hl ; 1st in hl - ld a,h ; compare sign - xor d - ld a,d - add hl,de - pop de ; restore text pointer - jp m,xp23 ; first and second sign differ - xor h ; first and second sign are equal - jp p,xp23 ; so is the result - jp qhow ; else we have overflow + ex de,hl ; 2nd in de + ex (sp),hl ; 1st in hl + ld a,h ; compare sign + xor d + ld a,d + add hl,de + pop de ; restore text pointer + jp m,xp23 ; first and second sign differ + xor h ; first and second sign are equal + jp p,xp23 ; so is the result + jp qhow ; else we have overflow xp25: - call testc ; subtract? - .db '-' - .db xp42-$-1 + call testc ; subtract? + .db '-' + .db xp42-$-1 xp26: - push hl ; yes, save first - call expr3 ; get second - call changesign ; negate - jr xp24 ; and add them + push hl ; yes, save first + call expr3 ; get second + call changesign ; negate + jr xp24 ; and add them expr3: - call expr4 ; get first expr4 + call expr4 ; get first expr4 xp31: - call testc ; multiply? - .db '*' - .db xp34-$-1 - push hl ; yes, save first and get second - call expr4 ; - ld b,0 ; clear b for sign - call checksign - ex (sp),hl ; first in hl - call checksign ; check sign of first - ex de,hl - ex (sp),hl - ld a,h ; is hl > 255? - or a - jr z,xp32 ; no - ld a,d ; yes, what about de - or d - ex de,hl - jp nz,ahow + call testc ; multiply? + .db '*' + .db xp34-$-1 + push hl ; yes, save first and get second + call expr4 ; + ld b,0 ; clear b for sign + call checksign + ex (sp),hl ; first in hl + call checksign ; check sign of first + ex de,hl + ex (sp),hl + ld a,h ; is hl > 255? + or a + jr z,xp32 ; no + ld a,d ; yes, what about de + or d + ex de,hl + jp nz,ahow xp32: - ld a,l - ld hl,0000h - or a - jr z,xp35 + ld a,l + ld hl,0000h + or a + jr z,xp35 xp33: - add hl,de - jp c,ahow - dec a - jr nz,xp33 - jr xp35 + add hl,de + jp c,ahow + dec a + jr nz,xp33 + jr xp35 xp34: - call testc ; divide - .db '/' - .db xp42-$-1 - push hl ; yes, save first - call expr4 ; and get the second one - ld b,0h ; clear b for sign - call checksign ; check sign of the second - ex (sp),hl ; get the first in hl - call checksign ; check sign of first - ex de,hl - ex (sp),hl - ex de,hl - ld a,d ; divide by 0? - or e - jp z,ahow ; err...how? - push bc ; else save sign - call divide - ld h,b - ld l,c - pop bc ; retrieve sign + call testc ; divide + .db '/' + .db xp42-$-1 + push hl ; yes, save first + call expr4 ; and get the second one + ld b,0h ; clear b for sign + call checksign ; check sign of the second + ex (sp),hl ; get the first in hl + call checksign ; check sign of first + ex de,hl + ex (sp),hl + ex de,hl + ld a,d ; divide by 0? + or e + jp z,ahow ; err...how? + push bc ; else save sign + call divide + ld h,b + ld l,c + pop bc ; retrieve sign xp35: - pop de ; and text pointer - ld a,h ; hl must be positive - or a - jp m,qhow ; else it's overflow - ld a,b - or a - call m,changesign ; change sign if needed - jp xp31 ; look for more terms + pop de ; and text pointer + ld a,h ; hl must be positive + or a + jp m,qhow ; else it's overflow + ld a,b + or a + call m,changesign ; change sign if needed + jp xp31 ; look for more terms expr4: - ld hl,tab4-1 ; find function in tab4 - jp exec ; and execute it + ld hl,tab4-1 ; find function in tab4 + jp exec ; and execute it xp40: - call testvar - jr c,xp41 ; nor a variable - ld a,(hl) - inc hl - ld h,(hl) ; value in hl - ld l,a - ret + call testvar + jr c,xp41 ; nor a variable + ld a,(hl) + inc hl + ld h,(hl) ; value in hl + ld l,a + ret xp41: - call testnum ; or is it a number - ld a,b ; number of digits - or a - ret nz ; ok + call testnum ; or is it a number + ld a,b ; number of digits + or a + ret nz ; ok parn: - call testc - .db '(' - .db xp43-$-1 - call expr ; "(expr)" - call testc - .db ')' - .db xp43-$-1 + call testc + .db '(' + .db xp43-$-1 + call expr ; "(expr)" + call testc + .db ')' + .db xp43-$-1 xp42: - ret + ret xp43: - jp qwhat ; what? + jp qwhat ; what? rnd: - call parn ; ** Rnd(expr) ** - ld a,h ; expression must be positive - or a - jp m,qhow - or l ; and non-zero - jp z,qhow - push de ; save de and hl - push hl - ld hl,(rndptr) ; get memory as random number - ld de,LST_ROM - call comp - jr c,ra1 ; wrap around if last - ld hl,start + call parn ; ** Rnd(expr) ** + ld a,h ; expression must be positive + or a + jp m,qhow + or l ; and non-zero + jp z,qhow + push de ; save de and hl + push hl + ld hl,(rndptr) ; get memory as random number + ld de,LST_ROM + call comp + jr c,ra1 ; wrap around if last + ld hl,start ra1: - ld e,(hl) - inc hl - ld d,(hl) - ld (rndptr),hl - pop hl - ex de,hl - push bc - call divide ; rnd(n)=mod(m,n)+1 - pop bc - pop de - inc hl - ret + ld e,(hl) + inc hl + ld d,(hl) + ld (rndptr),hl + pop hl + ex de,hl + push bc + call divide ; rnd(n)=mod(m,n)+1 + pop bc + pop de + inc hl + ret abs: - call parn ; ** Abs (expr) ** - dec de - call checksign - inc de - ret + call parn ; ** Abs (expr) ** + dec de + call checksign + inc de + ret size: - ld hl,(textunfilled) ; ** Size ** - push de ; get the number of free bytes between - ex de,hl ; and varbegin - ld hl,varbegin - call subde - pop de - ret + ld hl,(textunfilled) ; ** Size ** + push de ; get the number of free bytes between + ex de,hl ; and varbegin + ld hl,varbegin + call subde + pop de + ret clrvars: - ld hl,(textunfilled) ; ** ClearVars** - push de ; get the number of bytes available - ex de,hl ; for variable storge - ld hl,varend - call subde - ld b,h ; and save in bc - ld c,l - ld hl,(textunfilled) ; clear the first byte - ld d,h - ld e,l - inc de - ld (hl),0h - ldir ; and repeat for all the others - pop de - ret + ld hl,(textunfilled) ; ** ClearVars** + push de ; get the number of bytes available + ex de,hl ; for variable storge + ld hl,varend + call subde + ld b,h ; and save in bc + ld c,l + ld hl,(textunfilled) ; clear the first byte + ld d,h + ld e,l + inc de + ld (hl),0h + ldir ; and repeat for all the others + pop de + ret ;************************************************************* ; @@ -535,7 +535,7 @@ clrvars: ; ; 'SUBDE' SUBSTRACTS DE FROM HL ; -; 'CHKSGN' CHECKS SIGN OF HL. IF +, NO CHANGE. IF -, CHANGE +; 'CHKSGN' CHECKS SIGN OF HL. IF +, NO CHANGE. IF -, CHANGE ; SIGN AND FLIP SIGN OF B. ; ; 'CHGSGN' CHECKS SIGN N OF HL AND B UNCONDITIONALLY. @@ -545,85 +545,85 @@ clrvars: ; CASE, HL DE ARE THEN COMPARED TO SET THE FLAGS. ;************************************************************* divide: - push hl ; ** Divide ** - ld l,h ; divide h by de - ld h,0h - call dv1 - ld b,c ; save result in b - ld a,l ; (remainder + l) / de - pop hl - ld h,a + push hl ; ** Divide ** + ld l,h ; divide h by de + ld h,0h + call dv1 + ld b,c ; save result in b + ld a,l ; (remainder + l) / de + pop hl + ld h,a dv1: - ld c,0ffh ; result in c + ld c,0ffh ; result in c dv2: - inc c ; dumb routine - call subde ; divide using subtract and count - jr nc,dv2 - add hl,de - ret + inc c ; dumb routine + call subde ; divide using subtract and count + jr nc,dv2 + add hl,de + ret subde: - ld a,l ; ** subde ** - sub e ; subtract de from hl - ld l,a - ld a,h - sbc a,d - ld h,a - ret + ld a,l ; ** subde ** + sub e ; subtract de from hl + ld l,a + ld a,h + sbc a,d + ld h,a + ret checksign: - ld a,h ; ** CheckSign ** - or a ; check sign of hl - ret p + ld a,h ; ** CheckSign ** + or a ; check sign of hl + ret p changesign: - ld a,h ; ** ChangeSign ** - or l ; check if hl is zero - jp nz,cs1 ; no, try to change sign - ret ; yes, return + ld a,h ; ** ChangeSign ** + or l ; check if hl is zero + jp nz,cs1 ; no, try to change sign + ret ; yes, return cs1: - ld a,h ; change sign of hl - push af - cpl - ld h,a - ld a,l - cpl - ld l,a - inc hl - pop af - xor h - jp p,qhow - ld a,b ; and also flip b - xor 80h - ld b,a - ret + ld a,h ; change sign of hl + push af + cpl + ld h,a + ld a,l + cpl + ld l,a + inc hl + pop af + xor h + jp p,qhow + ld a,b ; and also flip b + xor 80h + ld b,a + ret ckhlde: - ld a,h ; same sign? - xor d ; yes, compare - jp p,ck1 ; no, exchange and compare - ex de,hl + ld a,h ; same sign? + xor d ; yes, compare + jp p,ck1 ; no, exchange and compare + ex de,hl ck1: - call comp - ret + call comp + ret ;************************************************************* ; ; *** SETVAL *** FIN *** ENDCHK *** & ERROR (& FRIENDS) *** ; ; "SETVAL" EXPECTS A VARIABLE, FOLLOWED BY AN EQUAL SIGN AND -; THEN AN EXPR. IT EVALUATES THE EXPR. AND SET THE VARIABLE +; THEN AN EXPR. IT EVALUATES THE EXPR. AND SET THE VARIABLE ; TO THAT VALUE. ; ; "FIN" CHECKS THE END OF A COMMAND. IF IT ENDED WITH ":", -; EXECUTION CONTINUES. IF IT ENDED WITH A CR, IT FINDS THE +; EXECUTION CONTINUES. IF IT ENDED WITH A CR, IT FINDS THE ; NEXT LINE AND CONTINUE FROM THERE. ; ; "ENDCHK" CHECKS IF A COMMAND IS ENDED WITH CR. THIS IS -; REQUIRED IN CERTAIN COMMANDS. (GOTO, RETURN, AND STOP ETC.) +; REQUIRED IN CERTAIN COMMANDS. (GOTO, RETURN, AND STOP ETC.) ; ; "ERROR" PRINTS THE STRING POINTED BY DE (AND ENDS WITH CR). ; IT THEN PRINTS THE LINE POINTED BY 'CURRNT' WITH A "?" ; INSERTED AT WHERE THE OLD TEXT POINTER (SHOULD BE ON TOP ; OF THE STACK) POINTS TO. EXECUTION OF TB IS STOPPED -; AND TBI IS RESTARTED. HOWEVER, IF 'CURRNT' -> ZERO +; AND TBI IS RESTARTED. HOWEVER, IF 'CURRNT' -> ZERO ; (INDICATING A DIRECT COMMAND), THE DIRECT COMMAND IS NOT ; PRINTED. AND IF 'CURRNT' -> NEGATIVE # (INDICATING 'INPUT' ; COMMAND), THE INPUT LINE IS NOT PRINTED AND EXECUTION IS @@ -636,76 +636,76 @@ ck1: ; 'AHOW' AND 'AHOW' IN THE ZERO PAGE SECTION ALSO DO THIS. ;************************************************************* setval: - call testvar ; ** SetVal ** - jp c,qwhat ; no variable - push hl ; save address of var - call testc ; do we have =? - .db '=' - .db sv1-$-1 - call expr ; evaluate expression - ld b,h ; value is in bc now - ld c,l - pop hl ; get address - ld (hl),c ; save value - inc hl - ld (hl),b - ret + call testvar ; ** SetVal ** + jp c,qwhat ; no variable + push hl ; save address of var + call testc ; do we have =? + .db '=' + .db sv1-$-1 + call expr ; evaluate expression + ld b,h ; value is in bc now + ld c,l + pop hl ; get address + ld (hl),c ; save value + inc hl + ld (hl),b + ret sv1: - jp qwhat + jp qwhat fin: - call testc ; test for ':' - .db ':' - .db fi1 - $ - 1 - pop af ; yes, purge return address - jp runsml ; continue on same line + call testc ; test for ':' + .db ':' + .db fi1 - $ - 1 + pop af ; yes, purge return address + jp runsml ; continue on same line fi1: - call testc ; not ':', is it cr - .db cr - .db fi2 - $ - 1 - pop af ; yes, purge return address - jp runnxl ; run next line + call testc ; not ':', is it cr + .db cr + .db fi2 - $ - 1 + pop af ; yes, purge return address + jp runnxl ; run next line fi2: - ret ; else return to caller + ret ; else return to caller endchk: - call skipspace ; ** EndChk ** - cp cr ; ends with cr? - ret z ; ok, otherwise say 'what?' + call skipspace ; ** EndChk ** + cp cr ; ends with cr? + ret z ; ok, otherwise say 'what?' qwhat: - push de ; ** QWhat ** + push de ; ** QWhat ** awhat: - ld de,what ; ** AWhat ** + ld de,what ; ** AWhat ** handleerror: - sub a ; ** Error ** - call printstr ; print error message - pop de - ld a,(de) ; save the character - push af ; at where old de points - sub a ; and put a 0 (zero) there - ld (de),a - ld hl,(current) ; get the current line number - push hl - ld a,(hl) ; check the value - inc hl - or (hl) - pop de - jp z,rstart ; if zero, just rerstart - ld a,(hl) ; if negative - or a - jp m,inputerror ; then redo input - call printline ; else print the line - dec de ; up to where the 0 is - pop af ; restore the character - ld (de),a - ld a,'?' ; print a ? - call outc - sub a ; and the rest of the line - call printstr - jp rstart + sub a ; ** Error ** + call printstr ; print error message + pop de + ld a,(de) ; save the character + push af ; at where old de points + sub a ; and put a 0 (zero) there + ld (de),a + ld hl,(current) ; get the current line number + push hl + ld a,(hl) ; check the value + inc hl + or (hl) + pop de + jp z,rstart ; if zero, just rerstart + ld a,(hl) ; if negative + or a + jp m,inputerror ; then redo input + call printline ; else print the line + dec de ; up to where the 0 is + pop af ; restore the character + ld (de),a + ld a,'?' ; print a ? + call outc + sub a ; and the rest of the line + call printstr + jp rstart qsorry: - push de ; ** Sorry ** + push de ; ** Sorry ** asorry: - ld de,sorry - jr handleerror + ld de,sorry + jr handleerror ;************************************************************* ; @@ -713,7 +713,7 @@ asorry: ; ; 'GETLN' READS A INPUT LINE INTO 'BUFFER'. IT FIRST PROMPT ; THE CHARACTER IN A (GIVEN BY THE CALLER), THEN IT FILLS -; THE BUFFER AND ECHOS. IT IGNORES LF'S AND NULLS, BUT STILL +; THE BUFFER AND ECHOS. IT IGNORES LF'S AND NULLS, BUT STILL ; ECHOS THEM BACK. RUB-OUT IS USED TO CAUSE IT TO DELETE ; THE LAST CHARACTER (IF THERE IS ONE), AND ALT-MOD IS USED TO ; CAUSE IT TO DELETE THE WHOLE LINE AND START IT ALL OVER. @@ -735,72 +735,72 @@ asorry: ; 'FNDSKP' USE DE TO FIND A CR, AND THEN START SEARCH. ;************************************************************* getline: - call outc ; ** GetLine ** - ld de,buffer ; prompt and initalise pointer + call outc ; ** GetLine ** + ld de,buffer ; prompt and initalise pointer gl1: - call chkio ; check keyboard - jr z,gl1 ; no input, so wait - cp bs ; erase last character? - jr z,gl3 ; yes - call outc ; echo character - cp lf ; ignore lf - jr z,gl1 - or a ; ignore null - jr z,gl1 - cp ctrlu ; erase the whole line? - jr z,gl4 ; yes - ld (de),a ; save the input - inc de ; and increment pointer - cp cr ; was it cr? - ret z ; yes, end of line - ld a,e ; any free space left? - cp bufend & 0ffh - jr nz,gl1 ; yes, get next char + call chkio ; check keyboard + jr z,gl1 ; no input, so wait + cp bs ; erase last character? + jr z,gl3 ; yes + call outc ; echo character + cp lf ; ignore lf + jr z,gl1 + or a ; ignore null + jr z,gl1 + cp ctrlu ; erase the whole line? + jr z,gl4 ; yes + ld (de),a ; save the input + inc de ; and increment pointer + cp cr ; was it cr? + ret z ; yes, end of line + ld a,e ; any free space left? + cp bufend & 0ffh + jr nz,gl1 ; yes, get next char gl3: - ld a,e ; delete last character - cp buffer & 0ffh ; if there are any? - jr z,gl4 ; no, redo whole line - dec de ; yes, back pointer - ld a,08h ; and echo a backspace - call outc - jr gl1 ; and get next character + ld a,e ; delete last character + cp buffer & 0ffh ; if there are any? + jr z,gl4 ; no, redo whole line + dec de ; yes, back pointer + ld a,08h ; and echo a backspace + call outc + jr gl1 ; and get next character gl4: - call crlf ; redo entire line - ld a,'>' - jr getline + call crlf ; redo entire line + ld a,'>' + jr getline findline: - ld a,h ; ** FindLine ** - or a ; check the sign of hl - jp m,qhow ; it cannot be negative - ld de,textbegin ; initialise the text pointer + ld a,h ; ** FindLine ** + or a ; check the sign of hl + jp m,qhow ; it cannot be negative + ld de,textbegin ; initialise the text pointer findlineptr: fl1: - push hl ; save line number - ld hl,(textunfilled) ; check if we passed end - dec hl - call comp - pop hl ; retrieve line number - ret c ; c,nz passed end - ld a,(de) ; we didn't; get first byte - sub l ; is this the line? - ld b,a ; compare low order - inc de - ld a,(de) ; get second byte - sbc a,h ; compare high order - jr c,fl2 ; no, not there yet - dec de ; else we either found it - or b ; or it's not there - ret ; nc,z:found; nc,nz:no + push hl ; save line number + ld hl,(textunfilled) ; check if we passed end + dec hl + call comp + pop hl ; retrieve line number + ret c ; c,nz passed end + ld a,(de) ; we didn't; get first byte + sub l ; is this the line? + ld b,a ; compare low order + inc de + ld a,(de) ; get second byte + sbc a,h ; compare high order + jr c,fl2 ; no, not there yet + dec de ; else we either found it + or b ; or it's not there + ret ; nc,z:found; nc,nz:no findnext: - inc de ; find next line + inc de ; find next line fl2: - inc de ; just passed first and second byte + inc de ; just passed first and second byte findskip: - ld a,(de) ; ** FindSkip ** - cp cr ; try to find cr - jr nz,fl2 ; keep looking - inc de ; found cr, skip over - jr fl1 ; check if end of text + ld a,(de) ; ** FindSkip ** + cp cr ; try to find cr + jr nz,fl2 ; keep looking + inc de ; found cr, skip over + jr fl1 ; check if end of text ;************************************************************* ; @@ -827,130 +827,130 @@ findskip: ; 'PRTLN' PRINTS A SAVED TEXT LINE WITH LINE # AND ALL. ;************************************************************* printstr: - ld b,a + ld b,a ps1: - ld a,(de) ; get a character - inc de ; bump pointer - cp b ; same as old A? - ret z ; yes, return - call outc ; no, show character - cp cr ; was it a cr? - jr nz,ps1 ; no, next character - ret ; yes, returns + ld a,(de) ; get a character + inc de ; bump pointer + cp b ; same as old A? + ret z ; yes, return + call outc ; no, show character + cp cr ; was it a cr? + jr nz,ps1 ; no, next character + ret ; yes, returns qtstg: - call testc ; ** Qtstg ** - .db 22h ; is it a double quote - .db qt3-$-1 - ld a,22h + call testc ; ** Qtstg ** + .db 22h ; is it a double quote + .db qt3-$-1 + ld a,22h qt1: - call printstr ; print until another - cp cr - pop hl - jp z,runnxl + call printstr ; print until another + cp cr + pop hl + jp z,runnxl qt2: - inc hl ; skip 3 bytes on return - inc hl - inc hl - jp (hl) ; return + inc hl ; skip 3 bytes on return + inc hl + inc hl + jp (hl) ; return qt3: - call testc ; is it a single quote - .db 27h - .db qt4-$-1 - ld a,27h - jr qt1 + call testc ; is it a single quote + .db 27h + .db qt4-$-1 + ld a,27h + jr qt1 qt4: - call testc ; is it back-arrow - .db '_' - .db qt5-$-1 - ld a,8dh ; yes, cr without lf - call outc - call outc - pop hl ; return address - jr qt2 + call testc ; is it back-arrow + .db '_' + .db qt5-$-1 + ld a,8dh ; yes, cr without lf + call outc + call outc + pop hl ; return address + jr qt2 qt5: - ret ; none of the above + ret ; none of the above printnum: - ld b,0h ; ** PrintNum ** - call checksign ; check sign - jp p,pn1 ; no sign - ld b,'-' - dec c + ld b,0h ; ** PrintNum ** + call checksign ; check sign + jp p,pn1 ; no sign + ld b,'-' + dec c pn1: - push de ; save - ld de, 000ah ; decimal - push de ; save as flag - dec c ; c=spaces - push bc ; save sign & space + push de ; save + ld de, 000ah ; decimal + push de ; save as flag + dec c ; c=spaces + push bc ; save sign & space pn2: - call divide ; divide hl by 10 - ld a,b ; result 0? - or c - jr z,pn3 ; yes, we got all - ex (sp),hl ; no, save remainder - dec l ; and count space - push hl ; hl is old bc - ld h,b ; moved result to bc - ld l,c - jr pn2 ; and divide by 10 + call divide ; divide hl by 10 + ld a,b ; result 0? + or c + jr z,pn3 ; yes, we got all + ex (sp),hl ; no, save remainder + dec l ; and count space + push hl ; hl is old bc + ld h,b ; moved result to bc + ld l,c + jr pn2 ; and divide by 10 pn3: - pop bc ; we got all digits + pop bc ; we got all digits pn4: - dec c - ld a,c ; look at space count - or a - jp m,pn5 ; no leading spaces - ld a,' ' ; print a leading space - call outc - jr pn4 ; any more? + dec c + ld a,c ; look at space count + or a + jp m,pn5 ; no leading spaces + ld a,' ' ; print a leading space + call outc + jr pn4 ; any more? pn5: - ld a,b ; print sign - or a - call nz,outc - ld e,l ; last remainder in e + ld a,b ; print sign + or a + call nz,outc + ld e,l ; last remainder in e pn6: - ld a,e ; check digit in e - cp lf ; lf is flag for no more - pop de - ret z ; if yes, return - add a,30h ; else convert to ascii - call outc ; and print the digit - jr pn6 ; next digit + ld a,e ; check digit in e + cp lf ; lf is flag for no more + pop de + ret z ; if yes, return + add a,30h ; else convert to ascii + call outc ; and print the digit + jr pn6 ; next digit printhex: - ld c,h ; ** PrintHex ** - call ph1 ; first hex byte + ld c,h ; ** PrintHex ** + call ph1 ; first hex byte printhex8: - ld c,l ; then second + ld c,l ; then second ph1: - ld a,c ; get left nibble into position - rra - rra - rra - rra - call ph2 ; and turn into hex digit - ld a,c ; then convert right nibble + ld a,c ; get left nibble into position + rra + rra + rra + rra + call ph2 ; and turn into hex digit + ld a,c ; then convert right nibble ph2: - and 0fh ; mask right nibble - add a,90h ; and convert to ascii character - daa - adc a,40h - daa - call outc ; print character - ret + and 0fh ; mask right nibble + add a,90h ; and convert to ascii character + daa + adc a,40h + daa + call outc ; print character + ret printline: - ld a,(de) ; ** PrintLine ** - ld l,a ; low order line number - inc de - ld a,(de) ; high order - ld h,a - inc de - ld c,04h ; print 4 digit line number - call printnum - ld a,' ' ; followed by a space - call outc - sub a ; and the the rest - call printstr - ret + ld a,(de) ; ** PrintLine ** + ld l,a ; low order line number + inc de + ld a,(de) ; high order + ld h,a + inc de + ld c,04h ; print 4 digit line number + call printnum + ld a,' ' ; followed by a space + call outc + sub a ; and the the rest + call printstr + ret ;************************************************************* ; @@ -969,143 +969,143 @@ printline: ; STACK ;************************************************************* mvup: - call comp ; ** mvup ** - ret z ; de = hl, return - ld a,(de) ; get one byte - ld (bc),a ; then copy it - inc de ; increase both pointers - inc bc - jr mvup ; until done + call comp ; ** mvup ** + ret z ; de = hl, return + ld a,(de) ; get one byte + ld (bc),a ; then copy it + inc de ; increase both pointers + inc bc + jr mvup ; until done mvdown: - ld a,b ; ** mvdown ** - sub d ; check if de = bc - jp nz,md1 ; no, go move - ld a,c ; maybe, other byte - sub e - ret z ; yes, return + ld a,b ; ** mvdown ** + sub d ; check if de = bc + jp nz,md1 ; no, go move + ld a,c ; maybe, other byte + sub e + ret z ; yes, return md1: - dec de ; else move a byte - dec hl ; but first decrease both pointers - ld a,(de) ; and then do it - ld (hl),a - jr mvdown ; loop back + dec de ; else move a byte + dec hl ; but first decrease both pointers + ld a,(de) ; and then do it + ld (hl),a + jr mvdown ; loop back popa: - pop bc ; bc = return address - pop hl ; restore loopvar - ld (loopvar),hl - ld a,h - or l - jr z,pp1 ; all done, so return - pop hl - ld (loopinc),hl - pop hl - ld (looplmt),hl - pop hl - ld (loopln),hl - pop hl - ld (loopptr),hl + pop bc ; bc = return address + pop hl ; restore loopvar + ld (loopvar),hl + ld a,h + or l + jr z,pp1 ; all done, so return + pop hl + ld (loopinc),hl + pop hl + ld (looplmt),hl + pop hl + ld (loopln),hl + pop hl + ld (loopptr),hl pp1: - push bc ; bc = return address - ret + push bc ; bc = return address + ret pusha: - ld hl,stacklimit ; ** PushA ** - call changesign - pop bc ; bc = return address - add hl,sp ; is stack near the top? - jp nc,qsorry ; yes, sorry - ld hl,(loopvar) ; else save loop variables - ld a,h - or l - jr z,pu1 ; only when loopvar not 0 - ld hl,(loopptr) - push hl - ld hl,(loopln) - push hl - ld hl,(looplmt) - push hl - ld hl,(loopinc) - push hl - ld hl,(loopvar) + ld hl,stacklimit ; ** PushA ** + call changesign + pop bc ; bc = return address + add hl,sp ; is stack near the top? + jp nc,qsorry ; yes, sorry + ld hl,(loopvar) ; else save loop variables + ld a,h + or l + jr z,pu1 ; only when loopvar not 0 + ld hl,(loopptr) + push hl + ld hl,(loopln) + push hl + ld hl,(looplmt) + push hl + ld hl,(loopinc) + push hl + ld hl,(loopvar) pu1: - push hl - push bc ; bc = return address - ret + push hl + push bc ; bc = return address + ret testvar: - call skipspace ; ** testvar ** - sub '@' ; test variables - ret c ; not a variable - jr nz,tv1 ; not @ array - inc de ; is is the @ array - call parn ; @ should be followed by (expr) - add hl,hl ; as its index - jr c,qhow ; is index too big? - push de ; will it override text? - ex de,hl - call size ; find the size of free - call comp - jp c,asorry ; yes, sorry - ld hl,varbegin ; no, get address of @(expr) and - call subde ; put it in hl - pop de - ret + call skipspace ; ** testvar ** + sub '@' ; test variables + ret c ; not a variable + jr nz,tv1 ; not @ array + inc de ; is is the @ array + call parn ; @ should be followed by (expr) + add hl,hl ; as its index + jr c,qhow ; is index too big? + push de ; will it override text? + ex de,hl + call size ; find the size of free + call comp + jp c,asorry ; yes, sorry + ld hl,varbegin ; no, get address of @(expr) and + call subde ; put it in hl + pop de + ret tv1: - cp 1bh ; not @, is it A to Z - ccf - ret c - inc de ; if A trhough Z - ld hl,varbegin ; calculate address of that variable - rlca ; and return it in hl - add a,l ; with the c flag cleared - ld l,a - ld a,0 - adc a,h - ld h,a - ret + cp 1bh ; not @, is it A to Z + ccf + ret c + inc de ; if A trhough Z + ld hl,varbegin ; calculate address of that variable + rlca ; and return it in hl + add a,l ; with the c flag cleared + ld l,a + ld a,0 + adc a,h + ld h,a + ret testnum: - ld hl,0000h ; ** TestNum ** - ld b,h ; test if the text is a number - call skipspace + ld hl,0000h ; ** TestNum ** + ld b,h ; test if the text is a number + call skipspace tn1: - cp '0' ; if not,return 0 in b and hl - ret c - cp ':' ; if a digit, convert to binary in - ret nc ; b and hl - ld a,0f0h ; set b to number of digits - and h ; if h>255, there is no room for - jr nz,qhow ; next digit - inc b ; b counts number of digits - push bc - ld b,h ; hl=10*hl+(new digit) - ld c,l - add hl,hl ; where 10* is done by shift and add - add hl,hl - add hl,bc - add hl,hl - ld a,(de) ; and (digit) is by stripping the - inc de ; ascii code - and 0fh - add a,l - ld l,a - ld a,0 - adc a,h - ld h,a - pop bc - ld a,(de) - jp p,tn1 + cp '0' ; if not,return 0 in b and hl + ret c + cp ':' ; if a digit, convert to binary in + ret nc ; b and hl + ld a,0f0h ; set b to number of digits + and h ; if h>255, there is no room for + jr nz,qhow ; next digit + inc b ; b counts number of digits + push bc + ld b,h ; hl=10*hl+(new digit) + ld c,l + add hl,hl ; where 10* is done by shift and add + add hl,hl + add hl,bc + add hl,hl + ld a,(de) ; and (digit) is by stripping the + inc de ; ascii code + and 0fh + add a,l + ld l,a + ld a,0 + adc a,h + ld h,a + pop bc + ld a,(de) + jp p,tn1 qhow: - push de ; ** Error How? ** + push de ; ** Error How? ** ahow: - ld de,how - jp handleerror + ld de,how + jp handleerror -msg1 .db "TASTY BASIC",cr -msg2 .db " BYTES FREE",cr -how .db "HOW?",cr -ok .db "OK",cr -what .db "WHAT?",cr -sorry .db "SORRY",cr +msg1 .db "TASTY BASIC",cr +msg2 .db " BYTES FREE",cr +how .db "HOW?",cr +ok .db "OK",cr +what .db "WHAT?",cr +sorry .db "SORRY",cr ;************************************************************* ; @@ -1116,7 +1116,7 @@ sorry .db "SORRY",cr ; ; AT START, IT PRINTS OUT "(CR)OK(CR)", AND INITIALIZES THE ; STACK AND SOME OTHER INTERNAL VARIABLES. THEN IT PROMPTS -; ">" AND READS A LINE. IF THE LINE STARTS WITH A NON-ZERO +; ">" AND READS A LINE. IF THE LINE STARTS WITH A NON-ZERO ; NUMBER, THIS NUMBER IS THE LINE NUMBER. THE LINE NUMBER ; (IN 16 BIT BINARY) AND THE REST OF THE LINE (INCLUDING CR) ; IS STORED IN THE MEMORY. IF A LINE WITH THE SAME LINE @@ -1125,7 +1125,7 @@ sorry .db "SORRY",cr ; AND ANY EXISTING LINE WITH THE SAME LINE NUMBER IS DELETED. ; ; AFTER A LINE IS INSERTED, REPLACED, OR DELETED, THE PROGRAM -; LOOPS BACK AND ASKS FOR ANOTHER LINE. THIS LOOP WILL BE +; LOOPS BACK AND ASKS FOR ANOTHER LINE. THIS LOOP WILL BE ; TERMINATED WHEN IT READS A LINE WITH ZERO OR NO LINE ; NUMBER; AND CONTROL IS TRANSFERED TO "DIRECT". ; @@ -1135,80 +1135,80 @@ sorry .db "SORRY",cr ; BY THE CONTENT OF A MEMORY LOCATION LABELED "TXTUNF". ; ; THE MEMORY LOCATION "CURRNT" POINTS TO THE LINE NUMBER -; THAT IS CURRENTLY BEING INTERPRETED. WHILE WE ARE IN +; THAT IS CURRENTLY BEING INTERPRETED. WHILE WE ARE IN ; THIS LOOP OR WHILE WE ARE INTERPRETING A DIRECT COMMAND ; (SEE NEXT SECTION). "CURRNT" SHOULD POINT TO A 0. ;************************************************************* rstart: - ld sp,stack + ld sp,stack st1: - call crlf - sub a ; a=0 - ld de,ok ; print ok - call printstr - ld hl,st2 + 1 ; literal zero - ld (current),hl ; reset current line pointer + call crlf + sub a ; a=0 + ld de,ok ; print ok + call printstr + ld hl,st2 + 1 ; literal zero + ld (current),hl ; reset current line pointer st2: - ld hl,0000h - ld (loopvar),hl - ld (stkgos),hl + ld hl,0000h + ld (loopvar),hl + ld (stkgos),hl st3: - ld a,'>' ; initialise prompt - call getline - push de ; de points to end of line - ld de,buffer ; point de to beginning of line - call testnum ; check if it is a number - call skipspace - ld a,h ; hl = value of the number, or - or l ; 0 if no number was found - pop bc ; bc points to end of line - jp z,direct - dec de ; back up de and save the value of - ld a,h ; the value of the line number there - ld (de),a - dec de - ld a,l - ld (de),a - push bc ; bc,de point to begin,end - push de - ld a,c - sub e + ld a,'>' ; initialise prompt + call getline + push de ; de points to end of line + ld de,buffer ; point de to beginning of line + call testnum ; check if it is a number + call skipspace + ld a,h ; hl = value of the number, or + or l ; 0 if no number was found + pop bc ; bc points to end of line + jp z,direct + dec de ; back up de and save the value of + ld a,h ; the value of the line number there + ld (de),a + dec de + ld a,l + ld (de),a + push bc ; bc,de point to begin,end + push de + ld a,c + sub e - push af ; a = number of bytes in line - call findline ; find this line in save area - push de ; de points to save area - jr nz,st4 ; nz: line not found - push de ; z: found, delete it - call findnext ; find next line - ; de -> next line - pop bc ; bc -> line to be deleted - ld hl,(textunfilled) ; hl -> unfilled text area - call mvup ; move up to delete - ld h,b ; txtunf -> unfilled area - ld l,c - ld (textunfilled),hl + push af ; a = number of bytes in line + call findline ; find this line in save area + push de ; de points to save area + jr nz,st4 ; nz: line not found + push de ; z: found, delete it + call findnext ; find next line + ; de -> next line + pop bc ; bc -> line to be deleted + ld hl,(textunfilled) ; hl -> unfilled text area + call mvup ; move up to delete + ld h,b ; txtunf -> unfilled area + ld l,c + ld (textunfilled),hl st4: - pop bc ; get ready to insert - ld hl,(textunfilled) ; but first check if the length - pop af ; of new line is 3 (line# and cr) - push hl - cp 3h ; if so, do not insert - jr z,rstart ; must clear the stack - add a,l ; calculate new txtunf - ld l,a - ld a,0 - adc a,h - ld h,a ; hl -> new unfilled area - ld de,textend ; check to see if there is space - call comp - jp nc,qsorry ; no, sorry - ld (textunfilled),hl ; ok, update textunfilled - pop de ; de -> old unfilled area - call mvdown - pop de ; de,hl -> begin,end - pop hl - call mvup ; copy new line to save area - jr st3 + pop bc ; get ready to insert + ld hl,(textunfilled) ; but first check if the length + pop af ; of new line is 3 (line# and cr) + push hl + cp 3h ; if so, do not insert + jr z,rstart ; must clear the stack + add a,l ; calculate new txtunf + ld l,a + ld a,0 + adc a,h + ld h,a ; hl -> new unfilled area + ld de,textend ; check to see if there is space + call comp + jp nc,qsorry ; no, sorry + ld (textunfilled),hl ; ok, update textunfilled + pop de ; de -> old unfilled area + call mvdown + pop de ; de,hl -> begin,end + pop hl + call mvup ; copy new line to save area + jr st3 ;************************************************************* ; @@ -1249,47 +1249,47 @@ st4: ;************************************************************* #ifndef ZEMU bye: - call endchk ; ** Reboot ** - LD A,BID_BOOT ; BOOT BANK - LD HL,0 ; ADDRESS ZERO - CALL HB_BNKCALL ; DOES NOT RETURN - HALT + call endchk ; ** Reboot ** + LD A,BID_BOOT ; BOOT BANK + LD HL,0 ; ADDRESS ZERO + CALL HB_BNKCALL ; DOES NOT RETURN + HALT #endif new: - call endchk ; ** New ** - ld hl,textbegin - ld (textunfilled),hl + call endchk ; ** New ** + ld hl,textbegin + ld (textunfilled),hl clear: - call clrvars ; ** Clear ** - jp rstart + call clrvars ; ** Clear ** + jp rstart endd: - call endchk ; ** End ** - jp rstart + call endchk ; ** End ** + jp rstart run: - call endchk ; ** Run ** - ld de,textbegin + call endchk ; ** Run ** + ld de,textbegin runnxl: - ld hl,0h ; ** Run Next Line ** - call findlineptr - jp c,rstart + ld hl,0h ; ** Run Next Line ** + call findlineptr + jp c,rstart runtsl: - ex de,hl ; ** Run Tsl - ld (current),hl ; set current -> line # - ex de,hl - inc de - inc de + ex de,hl ; ** Run Tsl + ld (current),hl ; set current -> line # + ex de,hl + inc de + inc de runsml: - call chkio ; ** Run Same Line ** - ld hl, tab2-1 ; find the command in table 2 - jp exec ; and execute it + call chkio ; ** Run Same Line ** + ld hl, tab2-1 ; find the command in table 2 + jp exec ; and execute it goto: - call expr - push de ; save for error routine - call endchk ; must find a cr - call findline ; find the target line - jp nz, ahow ; no such line # - pop af ; clear the pushed de - jr runtsl ; go do it + call expr + push de ; save for error routine + call endchk ; must find a cr + call findline ; find the target line + jp nz, ahow ; no such line # + pop af ; clear the pushed de + jr runtsl ; go do it ;************************************************************* ; @@ -1302,7 +1302,7 @@ goto: ; ; PRINT COMMAND IS 'PRINT ....;' OR 'PRINT ....(CR)' ; WHERE '....' IS A LIST OF EXPRESIONS, FORMATS, BACK- -; ARROWS, AND STRINGS. THESE ITEMS ARE SEPERATED BY COMMAS. +; ARROWS, AND STRINGS. THESE ITEMS ARE SEPERATED BY COMMAS. ; ; A FORMAT IS A POUND SIGN FOLLOWED BY A NUMBER. IT CONTROLS ; THE NUMBER OF SPACES THE VALUE OF A EXPRESION IS GOING TO @@ -1320,77 +1320,77 @@ goto: ; ENDED WITH A COMMA, NO (CRLF) IS GENERATED. ;************************************************************* list: - call testnum ; check if there is a number - call endchk ; if no number we get a 0 - call findline ; find this or next line + call testnum ; check if there is a number + call endchk ; if no number we get a 0 + call findline ; find this or next line ls1: - jp c,rstart - call printline ; print the line - call chkio ; stop on ctrl-c - call findlineptr ; find the next line - jr ls1 ; and loop back + jp c,rstart + call printline ; print the line + call chkio ; stop on ctrl-c + call findlineptr ; find the next line + jr ls1 ; and loop back print: - ld c,6 ; c = number of spaces - call testc ; is it a semicolon? - .db ':' - .db pr2-$-1 - call crlf - jr runsml + ld c,6 ; c = number of spaces + call testc ; is it a semicolon? + .db ':' + .db pr2-$-1 + call crlf + jr runsml pr2: - call testc ; is it a cr? - .db cr - .db pr0-$-1 - call crlf - jr runnxl + call testc ; is it a cr? + .db cr + .db pr0-$-1 + call crlf + jr runnxl pr0: - call testc ; is it format? - .db '#' - .db pr1-$-1 - call expr - ld c,l - jr pr3 + call testc ; is it format? + .db '#' + .db pr1-$-1 + call expr + ld c,l + jr pr3 pr1: - call testc ; is it a dollar? - .db '$' - .db pr4-$-1 - call expr - ld c,l - call testc ; do we have a comma? - .db ',' - .db pr6-$-1 - push bc - call expr - pop bc - ld a,8 ; 8 bits? - cp c - jp nz,pr9 ; no, try 16 - call printhex8 ; yes, print a single hex byte - jp pr3 + call testc ; is it a dollar? + .db '$' + .db pr4-$-1 + call expr + ld c,l + call testc ; do we have a comma? + .db ',' + .db pr6-$-1 + push bc + call expr + pop bc + ld a,8 ; 8 bits? + cp c + jp nz,pr9 ; no, try 16 + call printhex8 ; yes, print a single hex byte + jp pr3 pr9: - ld a,10h ; 16 bits? - cp c - jp nz,qhow ; no, show error message - call printhex ; yes, print two hex bytes - jp pr3 + ld a,10h ; 16 bits? + cp c + jp nz,qhow ; no, show error message + call printhex ; yes, print two hex bytes + jp pr3 pr4: - call qtstg ; is it a string? - jr pr8 + call qtstg ; is it a string? + jr pr8 pr3: - call testc ; is it a comma? - .db ',' - .db pr6-$-1 - call fin - jr pr0 + call testc ; is it a comma? + .db ',' + .db pr6-$-1 + call fin + jr pr0 pr6: - call crlf ; list ends - call finish + call crlf ; list ends + call finish pr8: - call expr ; evaluate the expression - push bc - call printnum - pop bc - jr pr3 + call expr ; evaluate the expression + push bc + call printnum + pop bc + jr pr3 ;************************************************************* ; @@ -1399,7 +1399,7 @@ pr8: ; 'GOSUB EXPR;' OR 'GOSUB EXPR (CR)' IS LIKE THE 'GOTO' ; COMMAND, EXCEPT THAT THE CURRENT TEXT POINTER, STACK POINTER ; ETC. ARE SAVE SO THAT EXECUTION CAN BE CONTINUED AFTER THE -; SUBROUTINE 'RETURN'. IN ORDER THAT 'GOSUB' CAN BE NESTED +; SUBROUTINE 'RETURN'. IN ORDER THAT 'GOSUB' CAN BE NESTED ; (AND EVEN RECURSIVE), THE SAVE AREA MUST BE STACKED. ; THE STACK POINTER IS SAVED IN 'STKGOS', THE OLD 'STKGOS' IS ; SAVED IN THE STACK. IF WE ARE IN THE MAIN ROUTINE, 'STKGOS' @@ -1412,34 +1412,34 @@ pr8: ; NEVER HAD A 'GOSUB' AND IS THUS AN ERROR. ;************************************************************* gosub: - call pusha ; ** Gosub ** - call expr ; save the current "FOR" params - push de ; and text pointer - call findline ; find the target line - jp nz,ahow ; how? because it doesn't exist - ld hl,(current) ; found it, save old 'current' - push hl - ld hl,(stkgos) ; and 'stkgos' - push hl - ld hl,0000h ; and load new ones - ld (loopvar),hl - add hl,sp - ld (stkgos),hl - jp runtsl ; and run the line + call pusha ; ** Gosub ** + call expr ; save the current "FOR" params + push de ; and text pointer + call findline ; find the target line + jp nz,ahow ; how? because it doesn't exist + ld hl,(current) ; found it, save old 'current' + push hl + ld hl,(stkgos) ; and 'stkgos' + push hl + ld hl,0000h ; and load new ones + ld (loopvar),hl + add hl,sp + ld (stkgos),hl + jp runtsl ; and run the line return: - call endchk ; there must be a cr - ld hl,(stkgos) ; check old stack pointer - ld a,h ; - or l - jp z,what ; what? not found - ld sp,hl ; otherwise restore it - pop hl - ld (stkgos),hl - pop hl - ld (current),hl ; and old 'current' - pop de ; and old text pointer - call popa ; and old 'FOR' params - call finish ; and we're back + call endchk ; there must be a cr + ld hl,(stkgos) ; check old stack pointer + ld a,h ; + or l + jp z,what ; what? not found + ld sp,hl ; otherwise restore it + pop hl + ld (stkgos),hl + pop hl + ld (current),hl ; and old 'current' + pop de ; and old text pointer + call popa ; and old 'FOR' params + call finish ; and we're back ;************************************************************* ; @@ -1469,258 +1469,258 @@ return: ; DID NOT MATCH. EITHER WAY, TBI THEN ADDS THE 'STEP' TO ; THAT VARIABLE AND CHECK THE RESULT WITH THE LIMIT. IF IT ; IS WITHIN THE LIMIT, CONTROL LOOPS BACK TO THE COMMAND -; FOLLOWING THE 'FOR'. IF OUTSIDE THE LIMIT, THE SAVE AREA +; FOLLOWING THE 'FOR'. IF OUTSIDE THE LIMIT, THE SAVE AREA ; IS PURGED AND EXECUTION CONTINUES. ;************************************************************* for: - call pusha ; save old save area - call setval ; set the control variable - dec hl ; its address is hl - ld (loopvar),hl ; save that - ld hl,tab5-1 ; use 'exec' to find 'TO' - jp exec + call pusha ; save old save area + call setval ; set the control variable + dec hl ; its address is hl + ld (loopvar),hl ; save that + ld hl,tab5-1 ; use 'exec' to find 'TO' + jp exec fr1: - call expr ; evaluate the limit - ld (looplmt),hl ; and save it - ld hl,tab6-1 ; use 'exec' to find 'STEP' - jp exec + call expr ; evaluate the limit + ld (looplmt),hl ; and save it + ld hl,tab6-1 ; use 'exec' to find 'STEP' + jp exec fr2: - call expr ; found 'STEP' - jr fr4 + call expr ; found 'STEP' + jr fr4 fr3: - ld hl,0001h ; no 'STEP' so set to 1 + ld hl,0001h ; no 'STEP' so set to 1 fr4: - ld (loopinc),hl ; and save that too + ld (loopinc),hl ; and save that too fr5: - ld hl,(current) ; save current line number - ld (loopln),hl - ex de,hl ; and text pointer - ld (loopptr),hl - ld bc,0ah ; dig into stack to find loopvar - ld hl,(loopvar) - ex de,hl - ld h,b - ld l,b - add hl,sp - .db 3eh + ld hl,(current) ; save current line number + ld (loopln),hl + ex de,hl ; and text pointer + ld (loopptr),hl + ld bc,0ah ; dig into stack to find loopvar + ld hl,(loopvar) + ex de,hl + ld h,b + ld l,b + add hl,sp + .db 3eh fr7: - add hl,bc - ld a,(hl) - inc hl - or (hl) - jr z,fr8 - ld a,(hl) - dec hl - cp d - jr nz,fr7 - ld a,(hl) - cp e - jr nz,fr7 - ex de,hl - ld hl,0000h - add hl,sp - ld b,h - ld c,l - ld hl,000ah - add hl,de - call mvdown - ld sp,hl + add hl,bc + ld a,(hl) + inc hl + or (hl) + jr z,fr8 + ld a,(hl) + dec hl + cp d + jr nz,fr7 + ld a,(hl) + cp e + jr nz,fr7 + ex de,hl + ld hl,0000h + add hl,sp + ld b,h + ld c,l + ld hl,000ah + add hl,de + call mvdown + ld sp,hl fr8: - ld hl,(loopptr) ; all done - ex de,hl - call finish + ld hl,(loopptr) ; all done + ex de,hl + call finish next: - call testvar ; get address of variable - jp c,qwhat ; what, no variable - ld (varnext),hl ; yes, save it + call testvar ; get address of variable + jp c,qwhat ; what, no variable + ld (varnext),hl ; yes, save it nx0: - push de ; save the text pointer - ex de,hl - ld hl,(loopvar) ; get the variable in 'FOR' - ld a,h - or l ; if 0, there never was one - jp z,awhat - call comp ; else check them - jr z,nx3 ; yes, they agree - pop de ; no, complete current loop - call popa - ld hl,(varnext) ; and pop one level - jr nx0 ; go check again + push de ; save the text pointer + ex de,hl + ld hl,(loopvar) ; get the variable in 'FOR' + ld a,h + or l ; if 0, there never was one + jp z,awhat + call comp ; else check them + jr z,nx3 ; yes, they agree + pop de ; no, complete current loop + call popa + ld hl,(varnext) ; and pop one level + jr nx0 ; go check again nx3: - ld e,(hl) - inc hl - ld d,(hl) ; de = value of variable - ld hl,(loopinc) - push hl - ld a,h - xor d - ld a,d - add hl,de - jp m,nx4 - xor h - jp m,nx5 + ld e,(hl) + inc hl + ld d,(hl) ; de = value of variable + ld hl,(loopinc) + push hl + ld a,h + xor d + ld a,d + add hl,de + jp m,nx4 + xor h + jp m,nx5 nx4: - ex de,hl - ld hl,(loopvar) - ld (hl),e - inc hl - ld (hl),d - ld hl,(looplmt) - pop af - or a - jp p,nx1 ; step > 0 - ex de,hl ; step < 0 + ex de,hl + ld hl,(loopvar) + ld (hl),e + inc hl + ld (hl),d + ld hl,(looplmt) + pop af + or a + jp p,nx1 ; step > 0 + ex de,hl ; step < 0 nx1: - call ckhlde ; compare with limit - pop de ; restore the text pointer - jr c,nx2 ; over the limit - ld hl,(loopln) ; within the limit - ld (current),hl - ld hl,(loopptr) - ex de,hl - call finish + call ckhlde ; compare with limit + pop de ; restore the text pointer + jr c,nx2 ; over the limit + ld hl,(loopln) ; within the limit + ld (current),hl + ld hl,(loopptr) + ex de,hl + call finish nx5: - pop hl - pop de + pop hl + pop de nx2: - call popa ; purge this loop - call finish ; + call popa ; purge this loop + call finish ; init: - ld hl,start ; initialise random pointer - ld (rndptr),hl - ld hl,usrfunc ; initialise user defined function - ld (usrptr),hl - ld a,0c3h - ld (usrfunc),a ; initiase default USR() behaviour - ld hl,qhow ; (i.e. HOW? error) - ld (usrfunc+1),hl - ld hl,textbegin ; initialise text area pointers - ld (textunfilled),hl - ld (ocsw),a ; enable output control switch - call clrvars ; clear variables - call crlf - ld de,msg1 ; output welcome message - call printstr - call crlf - call size ; output free size message - call printnum - ld de,msg2 - call printstr - jp rstart + ld hl,start ; initialise random pointer + ld (rndptr),hl + ld hl,usrfunc ; initialise user defined function + ld (usrptr),hl + ld a,0c3h + ld (usrfunc),a ; initiase default USR() behaviour + ld hl,qhow ; (i.e. HOW? error) + ld (usrfunc+1),hl + ld hl,textbegin ; initialise text area pointers + ld (textunfilled),hl + ld (ocsw),a ; enable output control switch + call clrvars ; clear variables + call crlf + ld de,msg1 ; output welcome message + call printstr + call crlf + call size ; output free size message + call printnum + ld de,msg2 + call printstr + jp rstart chkio: - call haschar ; check if character available - ret z ; no, return - call getchar ; get the character - push bc ; is it a lf? - ld b,a - sub lf - jr z,io1 ; yes, ignore an return - ld a,b ; no, restore a and bc - pop bc - cp ctrlo ; is it ctrl-o? - jr nz,io2 ; no, done - ld a,(ocsw) ; toggle output control switch - cpl - ld (ocsw),a - jr chkio ; get next character + call haschar ; check if character available + ret z ; no, return + call getchar ; get the character + push bc ; is it a lf? + ld b,a + sub lf + jr z,io1 ; yes, ignore an return + ld a,b ; no, restore a and bc + pop bc + cp ctrlo ; is it ctrl-o? + jr nz,io2 ; no, done + ld a,(ocsw) ; toggle output control switch + cpl + ld (ocsw),a + jr chkio ; get next character io1: - ld a,0h ; clear - or a ; set the z-flag - pop bc ; restore bc - ret ; return with z set + ld a,0h ; clear + or a ; set the z-flag + pop bc ; restore bc + ret ; return with z set io2: - cp 60h ; is it lower case? - jp c,io3 ; no - and 0dfh ; yes, make upper case + cp 60h ; is it lower case? + jp c,io3 ; no + and 0dfh ; yes, make upper case io3: - cp ctrlc ; is it ctrl-c? - ret nz ; no - jp rstart ; yes, restart tasty basic + cp ctrlc ; is it ctrl-c? + ret nz ; no + jp rstart ; yes, restart tasty basic crlf: - ld a,cr + ld a,cr outc: - push af - ld a,(ocsw) ; check output control switch - or a - jr nz,oc1 ; output is enabled - pop af ; output is disabled - ret ; so return + push af + ld a,(ocsw) ; check output control switch + or a + jr nz,oc1 ; output is enabled + pop af ; output is disabled + ret ; so return oc1: - pop af - call putchar - cp cr ; was it a cr? - ret nz ; no, return - ld a,lf ; send a lf - call outc - ld a,cr ; restore register - ret ; and return + pop af + call putchar + cp cr ; was it a cr? + ret nz ; no, return + ld a,lf ; send a lf + call outc + ld a,cr ; restore register + ret ; and return putchar: #ifdef ZEMU - call uart_tx_ready ; see if transmit is available - out (tty_data),a ; and send it - ret + call uart_tx_ready ; see if transmit is available + out (tty_data),a ; and send it + ret uart_tx_ready: - push af + push af uart_tx_ready_loop: - in a,(tty_status) - bit tx_empty,a - jp z,uart_tx_ready_loop - pop af + in a,(tty_status) + bit tx_empty,a + jp z,uart_tx_ready_loop + pop af #else - PUSH AF - PUSH BC - PUSH DE - PUSH HL - ; OUTPUT CHARACTER TO CONSOLE VIA HBIOS - LD E,A ; OUTPUT CHAR TO E - LD C,CIODEV_CONSOLE ; CONSOLE UNIT TO C - LD B,BF_CIOOUT ; HBIOS FUNC: OUTPUT CHAR - RST 08 ; HBIOS OUTPUTS CHARACTER - POP HL - POP DE - POP BC - POP AF + PUSH AF + PUSH BC + PUSH DE + PUSH HL + ; OUTPUT CHARACTER TO CONSOLE VIA HBIOS + LD E,A ; OUTPUT CHAR TO E + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C + LD B,BF_CIOOUT ; HBIOS FUNC: OUTPUT CHAR + RST 08 ; HBIOS OUTPUTS CHARACTER + POP HL + POP DE + POP BC + POP AF #endif - ret + ret haschar: #ifdef ZEMU - in a,(tty_status) ; check if character available - bit rx_full,a + in a,(tty_status) ; check if character available + bit rx_full,a #else - PUSH BC - PUSH DE - PUSH HL - ; GET CONSOLE INPUT STATUS VIA HBIOS - LD C,CIODEV_CONSOLE; CONSOLE UNIT TO C - LD B,BF_CIOIST ; HBIOS FUNC: INPUT STATUS - RST 08 ; HBIOS RETURNS STATUS IN A - POP HL - POP DE - POP BC + PUSH BC + PUSH DE + PUSH HL + ; GET CONSOLE INPUT STATUS VIA HBIOS + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C + LD B,BF_CIOIST ; HBIOS FUNC: INPUT STATUS + RST 08 ; HBIOS RETURNS STATUS IN A + POP HL + POP DE + POP BC #endif - ret + ret getchar: #ifdef ZEMU - in a,(tty_data) ; get the character + in a,(tty_data) ; get the character #else - PUSH BC - PUSH DE - PUSH HL - ; INPUT CHARACTER FROM CONSOLE VIA HBIOS - LD C,CIODEV_CONSOLE ; CONSOLE UNIT TO C - LD B,BF_CIOIN ; HBIOS FUNC: INPUT CHAR - RST 08 ; HBIOS READS CHARACTDR - LD A,E ; MOVE CHARACTER TO A FOR RETURN - ; RESTORE REGISTERS (AF IS OUTPUT) - POP HL - POP DE - POP BC + PUSH BC + PUSH DE + PUSH HL + ; INPUT CHARACTER FROM CONSOLE VIA HBIOS + LD C,CIO_CONSOLE ; CONSOLE UNIT TO C + LD B,BF_CIOIN ; HBIOS FUNC: INPUT CHAR + RST 08 ; HBIOS READS CHARACTDR + LD A,E ; MOVE CHARACTER TO A FOR RETURN + ; RESTORE REGISTERS (AF IS OUTPUT) + POP HL + POP DE + POP BC #endif - ret + ret ;************************************************************* ; @@ -1736,7 +1736,7 @@ getchar: ; ALL DIRECT AND STATEMENT COMMANDS. ; ; A '.' IN THE STRING WILL TERMINATE THE TEST AND THE PARTIAL -; MATCH WILL BE CONSIDERED AS A MATCH. E.G., 'P.', 'PR.', +; MATCH WILL BE CONSIDERED AS A MATCH. E.G., 'P.', 'PR.', ; 'PRI.', 'PRIN.', OR 'PRINT' WILL ALL MATCH 'PRINT'. ; ; THE TABLE CONSISTS OF ANY NUMBER OF ITEMS. EACH ITEM @@ -1748,155 +1748,155 @@ getchar: ; STRING DOES NOT MATCH ANY OF THE OTHER ITEMS, IT WILL ; MATCH THIS NULL ITEM AS DEFAULT. ;************************************************************* -tab1: ; direct commands - .db "LIST" - dwa(list) - .db "RUN" - dwa(run) - .db "NEW" - dwa(new) - .db "CLEAR" - dwa(clear) +tab1: ; direct commands + .db "LIST" + dwa(list) + .db "RUN" + dwa(run) + .db "NEW" + dwa(new) + .db "CLEAR" + dwa(clear) #ifndef ZEMU - .db "BYE" - dwa(bye) + .db "BYE" + dwa(bye) #endif -tab2: ; direct/statement - .db "NEXT" - dwa(next) - .db "LET" - dwa(let) - .db "IF" - dwa(iff) - .db "GOTO" - dwa(goto) - .db "GOSUB" - dwa(gosub) - .db "RETURN" - dwa(return) - .db "REM" - dwa(rem) - .db "FOR" - dwa(for) - .db "INPUT" - dwa(input) - .db "PRINT" - dwa(print) - .db "POKE" - dwa(poke) - .db "END" - dwa(endd) - dwa(deflt) -tab4: ; functions - .db "PEEK" - dwa(peek) - .db "RND" - dwa(rnd) - .db "ABS" - dwa(abs) - .db "USR" - dwa(usrexec) - .db "SIZE" - dwa(size) - dwa(xp40) -tab5: ; 'TO' in 'FOR' - .db "TO" - dwa(fr1) -tab6: ; 'STEP' in 'FOR' - .db "STEP" - dwa(fr2) - dwa(fr3) -tab8: ; relational operators - .db ">=" - dwa(xp11) - .db "#" - dwa(xp12) - .db ">" - dwa(xp13) - .db "=" - dwa(xp15) - .db "<=" - dwa(xp14) - .db "<" - dwa(xp16) - dwa(xp17) +tab2: ; direct/statement + .db "NEXT" + dwa(next) + .db "LET" + dwa(let) + .db "IF" + dwa(iff) + .db "GOTO" + dwa(goto) + .db "GOSUB" + dwa(gosub) + .db "RETURN" + dwa(return) + .db "REM" + dwa(rem) + .db "FOR" + dwa(for) + .db "INPUT" + dwa(input) + .db "PRINT" + dwa(print) + .db "POKE" + dwa(poke) + .db "END" + dwa(endd) + dwa(deflt) +tab4: ; functions + .db "PEEK" + dwa(peek) + .db "RND" + dwa(rnd) + .db "ABS" + dwa(abs) + .db "USR" + dwa(usrexec) + .db "SIZE" + dwa(size) + dwa(xp40) +tab5: ; 'TO' in 'FOR' + .db "TO" + dwa(fr1) +tab6: ; 'STEP' in 'FOR' + .db "STEP" + dwa(fr2) + dwa(fr3) +tab8: ; relational operators + .db ">=" + dwa(xp11) + .db "#" + dwa(xp12) + .db ">" + dwa(xp13) + .db "=" + dwa(xp15) + .db "<=" + dwa(xp14) + .db "<" + dwa(xp16) + dwa(xp17) direct: - ld hl,tab1-1 ; ** Direct ** + ld hl,tab1-1 ; ** Direct ** exec: - call skipspace ; ** Exec ** - push de + call skipspace ; ** Exec ** + push de ex1: - ld a,(de) - inc de - cp '.' - jr z,ex3 - inc hl - cp (hl) - jr z,ex1 - ld a,7fh - dec de - cp (hl) - jr c,ex5 + ld a,(de) + inc de + cp '.' + jr z,ex3 + inc hl + cp (hl) + jr z,ex1 + ld a,7fh + dec de + cp (hl) + jr c,ex5 ex2: - inc hl - cp (hl) - jr nc,ex2 - inc hl - pop de - jr exec + inc hl + cp (hl) + jr nc,ex2 + inc hl + pop de + jr exec ex3: - ld a,7fh + ld a,7fh ex4: - inc hl - cp (hl) - jr nc,ex4 + inc hl + cp (hl) + jr nc,ex4 ex5: - ld a,(hl) - inc hl - ld l,(hl) - and 7fh - ld h,a - pop af - jp (hl) + ld a,(hl) + inc hl + ld l,(hl) + and 7fh + ld h,a + pop af + jp (hl) ;------------------------------------------------------------------------------- -LST_ROM: ; all the above _can_ be in rom - ; all following *must* be in ram - .org (TBC_LOC + 09feh) -usrptr: .ds 2 ; -> user defined function area - .org (TBC_LOC + 0a00h) -usrfunc .ds 2 ; start of user defined function area - .org (TBC_LOC + 0c00h) ; start of state -ocsw .ds 1 ; output control switch -current .ds 2 ; points to current line -stkgos .ds 2 ; saves sp in 'GOSUB' -varnext .ds 2 ; temp storage -stkinp .ds 2 ; save sp in 'INPUT' -loopvar .ds 2 ; 'FOR' loop save area -loopinc .ds 2 ; loop increment -looplmt .ds 2 ; loop limit -loopln .ds 2 ; loop line number -loopptr .ds 2 ; loop text pointer -rndptr .ds 2 ; random number pointer -textunfilled .ds 2 ; -> unfilled text area -textbegin .ds 2 ; start of text save area - .org (TBC_LOC + 07dffh) -textend .ds 0 ; end of text area -varbegin .ds 55 ; variable @(0) -varend .ds 0 ; end of variable area -buffer .ds 72 ; input buffer -bufend .ds 1 -stacklimit .ds 1 - .org (TBC_LOC + 07fffh) -stack .equ $ +LST_ROM: ; all the above _can_ be in rom + ; all following *must* be in ram + .org (TBC_LOC + 09feh) +usrptr: .ds 2 ; -> user defined function area + .org (TBC_LOC + 0a00h) +usrfunc .ds 2 ; start of user defined function area + .org (TBC_LOC + 0c00h) ; start of state +ocsw .ds 1 ; output control switch +current .ds 2 ; points to current line +stkgos .ds 2 ; saves sp in 'GOSUB' +varnext .ds 2 ; temp storage +stkinp .ds 2 ; save sp in 'INPUT' +loopvar .ds 2 ; 'FOR' loop save area +loopinc .ds 2 ; loop increment +looplmt .ds 2 ; loop limit +loopln .ds 2 ; loop line number +loopptr .ds 2 ; loop text pointer +rndptr .ds 2 ; random number pointer +textunfilled .ds 2 ; -> unfilled text area +textbegin .ds 2 ; start of text save area + .org (TBC_LOC + 07dffh) +textend .ds 0 ; end of text area +varbegin .ds 55 ; variable @(0) +varend .ds 0 ; end of variable area +buffer .ds 72 ; input buffer +bufend .ds 1 +stacklimit .ds 1 + .org (TBC_LOC + 07fffh) +stack .equ $ #ifndef ZEMU -SLACK .EQU (TBC_END - LST_ROM) - .FILL SLACK,'t' +SLACK .EQU (TBC_END - LST_ROM) + .FILL SLACK,'t' - .ECHO "TASTYBASIC space remaining: " - .ECHO SLACK - .ECHO " bytes.\n" + .ECHO "TASTYBASIC space remaining: " + .ECHO SLACK + .ECHO " bytes.\n" #endif - .end + .end From a8d2f3bd39eab619547b819df174720824842fe6 Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Sun, 15 Mar 2020 13:45:32 -0700 Subject: [PATCH 09/17] Minor Bug Fixes - Disk assignment edge case - CP/M 3 accidental fall thru - Cosmetic updates --- ReadMe.txt | 2 +- Source/CBIOS/cbios.asm | 72 ++++------------------------------- Source/CPM3/boot.z80 | 86 ++++-------------------------------------- Source/CPM3/util.z80 | 18 ++++++++- Source/HBIOS/hbios.asm | 6 ++- Source/HBIOS/ppp.asm | 2 +- Source/HBIOS/prp.asm | 4 +- Source/ver.inc | 2 +- Source/ver.lib | 2 +- 9 files changed, 41 insertions(+), 153 deletions(-) diff --git a/ReadMe.txt b/ReadMe.txt index 81fe8ff0..4675bfcb 100644 --- a/ReadMe.txt +++ b/ReadMe.txt @@ -7,7 +7,7 @@ *********************************************************************** Wayne Warthen (wwarthen@gmail.com) -Version 2.9.2-pre.36, 2020-03-14 +Version 2.9.2-pre.37, 2020-03-15 https://www.retrobrewcomputers.org/ RomWBW is a ROM-based implementation of CP/M-80 2.2 and Z-System for diff --git a/Source/CBIOS/cbios.asm b/Source/CBIOS/cbios.asm index c3a0b49a..5482cbc1 100644 --- a/Source/CBIOS/cbios.asm +++ b/Source/CBIOS/cbios.asm @@ -2009,45 +2009,24 @@ AUTOSUB: ; ; SETUP AUTO SUBMIT COMMAND (IF REQUIRED FILES EXIST) LD A,(DEFDRIVE) ; GET DEFAULT DRIVE - - ;CALL PRTHEXBYTE - - PUSH AF - + PUSH AF ; SAVE DEFAULT DRIVE INC A ; CONVERT FROM DRIVE NUM TO FCB DRIVE CODE LD (FCB_SUB),A ; SET DRIVE OF SUBMIT.COM FCB LD (FCB_PRO),A ; SET DRIVE OF PROFILE.SUB FCB ; LD C,13 ; RESET DISK SYSTEM - CALL BDOS - - ;CALL PC_PERIOD - - POP AF -; - ;DEC A ; BACK TO ZERO INDEX - - ;LD E,A ; PUT IN E - ;LD C,14 ; SELECT DISK FUNCTION - ;CALL BDOS ; DO IT - - ;CALL PC_PERIOD + CALL BDOS ; DO IT + POP AF ; RESTORE DEFAULT DRIVE ; LD C,17 ; BDOS FUNCTION: FIND FIRST LD DE,FCB_SUB ; CHECK FOR SUBMIT.COM CALL BDOS ; INVOKE BDOS TO LOOK FOR FILE - - ;CALL PRTHEXBYTE - INC A ; CHECK FOR ERR, $FF --> $00 RET Z ; ERR, DO NOT ATTEMPT AUTO SUBMIT ; LD C,17 ; BDOS FUNCTION: FIND FIRST LD DE,FCB_PRO ; CHECK FOR PROFILE.SUB CALL BDOS ; INVOKE BDOS TO LOOK FOR FILE - - ;CALL PRTHEXBYTE - INC A ; CHECK FOR ERR, $FF --> $00 RET Z ; ERR, DO NOT ATTEMPT AUTO SUBMIT ; @@ -2423,7 +2402,8 @@ DRV_INIT8: CP E ; COMPARE TO CUR SLICE JR NZ,DRV_INIT8A ; IF NE, OK TO CONTINUE INC E ; IS BOOT DU/SLICE, SKIP IT - JR DRV_INIT8 ; AND RESTART LOOP + DJNZ DRV_INIT8 ; LOOP AS NEEDED + RET ; DONE ; DRV_INIT8A: ; ENTRY POINT TO SKIP BOOT DISK/LU CHECK ; @@ -2541,22 +2521,6 @@ DRV_INIT3A: RET ; AND RETURN ; DRV_INIT4: ; SET SLICES PER VOLUME (HDSPV) BASED ON HARD DISK VOLUME COUNT - -; ; *** DEBUG *** -; CALL NEWLINE2 -; LD A,(DRVLSTC) -; LD B,A -; CALL PRTHEXBYTE -; LD A,' ' -; CALL COUT -; LD HL,DRVLST -;TEMP1: -; LD A,(HL) -; INC HL -; CALL PRTHEXBYTE -; DJNZ TEMP1 -; ; *** DEBUG *** - LD A,E ; HARD DISK VOLUME COUNT TO A LD E,8 ; ASSUME 8 SLICES PER VOLUME DEC A ; DEC ACCUM TO CHECK FOR COUNT = 1 @@ -2569,14 +2533,6 @@ DRV_INIT4: ; SET SLICES PER VOLUME (HDSPV) BASED ON HARD DISK VOLUME COUNT DRV_INIT5: LD A,E ; SLICES PER VOLUME VALUE TO ACCUM LD (HDSPV),A ; SAVE IT -; -; ; SETUP TO ENUMERATE DEVICES TO BUILD DRVMAP -; LD B,BF_SYSGET -; LD C,BF_SYSGET_DIOCNT -; RST 08 ; E := DISK UNIT COUNT -; LD B,E ; COUNT TO B -; LD C,0 ; USE C AS DEVICE LIST INDEX -; LD DE,(BOOTVOL) ; BOOT VOLUME (UNIT, SLICE) LD A,1 ; ROM DISK UNIT? CP D ; CHECK IT @@ -2627,7 +2583,8 @@ DRV_INIT8: CP E ; COMPARE TO CUR SLICE JR NZ,DRV_INIT8A ; IF NE, OK TO CONTINUE INC E ; IS BOOT DU/SLICE, SKIP IT - JR DRV_INIT8 ; AND RESTART LOOP + DJNZ DRV_INIT8 ; LOOP AS NEEDED + RET ; DONE ; DRV_INIT8A: ; ENTRY POINT TO SKIP BOOT DISK/LU CHECK ; @@ -2712,20 +2669,7 @@ DPH_INIT1: CALL PRTDRV ; PRINT DRIVE INFO LD A,D ; A := UNIT PUSH HL ; SAVE DRIVE MAP POINTER - ;PUSH AF ; SAVE UNIT - ;; MATCH AND SAVE DEFAULT DRIVE BASED ON BOOT UNIT/SLICE - ;LD HL,BOOTVOL + 1 ; POINT TO BOOT UNIT - ;LD A,D ; LOAD CURRENT UNIT - ;CP (HL) ; MATCH? - ;JR NZ,DPH_INIT1A ; BYPASS IF NOT BOOT UNIT - ;DEC HL ; POINT TO BOOT SLICE - ;LD A,E ; LOAD CURRENT SLICE - ;CP (HL) ; MATCH? - ;JR NZ,DPH_INIT1A ; BYPASS IF NOT BOOT SLICE - ;LD A,C ; LOAD THE CURRENT DRIVE NUM - ;LD (DEFDRIVE),A ; SAVE AS DEFAULT DPH_INIT1A: - ;POP AF ; RESTORE UNIT LD DE,(DPHTOP) ; GET ADDRESS OF NEXT DPH PUSH DE ; ... AND SAVE IT ; INVOKE THE DPH BUILD ROUTINE @@ -2857,7 +2801,6 @@ MAKDPH2: PUSH HL ; MOVE ALLOC RESULT PTR POP BC ; ... TO BC POP HL ; RECOVER DPH PTR TO HL - ;JR NZ,ERR_HEAPOVF ; HANDLE POSSIBLE ALLOC OVERFLOW HERE JR C,ERR_HEAPOVF ; HANDLE POSSIBLE ALLOC OVERFLOW HERE LD (HL),C ; SAVE CKS/ALS BUF INC HL ; ... ADDRESS IN @@ -2876,7 +2819,6 @@ ALLOC: PUSH DE ; AND SAVE FOR RETURN VALUE ADD HL,DE ; ADD REQUESTED SPACE, HL := NEW HEAP TOP JR C,ALLOCX ; TEST FOR CPU MEMORY SPACE OVERFLOW - ;LD DE,(HEAPLIM) ; LOAD DE WITH HEAP LIMIT LD DE,HEAPEND ; LOAD DE WITH HEAP LIMIT EX DE,HL ; DE=NEW HEAPTOP, HL=HEAPLIM SBC HL,DE ; HEAPLIM - HEAPTOP diff --git a/Source/CPM3/boot.z80 b/Source/CPM3/boot.z80 index 38418b3a..a252faff 100644 --- a/Source/CPM3/boot.z80 +++ b/Source/CPM3/boot.z80 @@ -14,7 +14,7 @@ extrn @date,@hour,@min,@sec extrn @srch1 extrn addhla, bcd2bin, bin2bcd - ;extrn cout, phex8 + extrn cout, phex8, phex16, crlf, crlf2 include c:ver.lib @@ -85,7 +85,6 @@ cinit$1: rr l ; ... into correct vector position djnz cinit$1 ; loop as needed - ;ld hl,8000H ; device 0 ld (@civec),hl ; assign to console input ld (@covec),hl ; assign to console output @@ -100,8 +99,7 @@ cinit$1: ld hl,4000h ; assume aux on second char device jr nz,cinit$2 ; if console on unit 0, assumption good ld hl,8000h ; otherwise, aux goes to first char device -cinit$2: - ;ld hl,4000H ; device 1 +cinit$2: ld (@aivec),hl ; assign to aux input ld (@aovec),hl ; assign to aux output cinit$3: @@ -113,6 +111,7 @@ cinit$3: call addhla ; Skip used entries xor a ; Zero to accum ld (hl),0 ; Set table terminator + ret ; done dinit: ; loop through all disk devices to count hard disk units @@ -178,24 +177,7 @@ dinit3a: inc e ; increment hard disk count ret ; and return - dinit4: ; set slices per volume (hdspv) based on hard disk volume count - -; ; *** debug *** -; ;call newline2 -; ld a,(drvlstc) -; ld b,a -; call phex8 -; ld a,' ' -; call cout -; ld hl,drvlst -;temp1: -; ld a,(hl) -; inc hl -; call phex8 -; djnz temp1 -; ; *** debug *** - ld a,e ; hard disk volume count to a ld e,8 ; assume 8 slices per volume dec a ; dec accum to check for count = 1 @@ -250,6 +232,7 @@ dinit6: rlca ; *2 for word entry ld hl,@dtbl ; start of dtbl call addhla ; hl now points to entry + dinit6a: xor a ; zero accum ld (hl),a ; zero lsb @@ -277,7 +260,8 @@ dinit8: ; test to avoid reallocating boot disk unit/slice cp e ; compare to cur slice jr nz,dinit8a ; if ne, ok to continue inc e ; is boot du/slice, skip it - jr dinit8 ; and restart loop + djnz dinit8 ; loop till done with unit + ret dinit8a: ; d=unit, e=slice, l=dph#, b=slice cnt @@ -320,27 +304,6 @@ stpsiz equ $ - stpimg ; called CCP.COM on the system drive. ?ldccp: - - ;if zpm - ; - ;; Swap A: and system drive (make A: the system drive) - ;ld bc,(@dtbl) ; get drive A DPH - ;ld hl,@dtbl ; point to boot drive DPH - ;ld a,(@sysdr) - ;rlca - ;call addhla - ;ld e,(hl) ; set boot drive to drive A DPH - ;ld (hl),c ; ... and save boot drive DPH - ;inc hl - ;ld d,(hl) - ;ld (hl),b - ;ld (@dtbl),de ; set drive a DPH to boot drive - ; - ;xor a ; update @sysdr - ;ld (@sysdr),a - ; - ;endif - ; Force CCP to use system boot drive as initial default ld a,(@sysdr) ; get system boot drive ld (@ccpdr),a ; set CCP current drive @@ -369,22 +332,6 @@ stpsiz equ $ - stpimg if banked -; ; now, -; ; copy CCP to bank 0 for reloading -; lxi h,0100h ! lxi b,0C80h ; clone 3K, just in case -; lda @cbnk ! push psw ; save current bank -;ld$1: -; mvi a,tpa$bank ! call ?bnksl ; select TPA -; mov a,m ! push psw ; get a byte -; mvi a,2 ! call ?bnksl ; select extra bank -; pop psw ! mov m,a ; save the byte -; inx h ! dcx b ; bump pointer, drop count -; mov a,b ! ora c ; test for done -; jnz ld$1 -; pop psw ! call ?bnksl ; restore original bank - -; ; now, -; ; copy CCP to bank 0 for reloading ld hl,0100h ; clone 3K, just in case ld bc,0C80h ld a,(@cbnk) ; save current bank @@ -408,17 +355,9 @@ ld$1: endif - ;; Set first search path to system boot drive - ;inc a - ;ld (@srch1),a - - ;ld e,a - ;ld c,14 - ;call bdos - ret -no$CCP: ; here if we couldn't find the file +no$CCP: ; here if we couldn't find the file ld hl,ccp$msg call ?pmsg call ?conin @@ -429,17 +368,6 @@ no$CCP: ; here if we couldn't find the file if banked -; lxi h,0100h ! lxi b,0C00h ; clone 3K -;rl$1: -; mvi a,2 ! call ?bnksl ; select extra bank -; mov a,m ! push psw ; get a byte -; mvi a,tpa$bank ! call ?bnksl ; select TPA -; pop psw ! mov m,a ; save the byte -; inx h ! dcx b ; bump pointer, drop count -; mov a,b ! ora c ; test for done -; jnz rl$1 -; ret - ld hl,0100h ; clone 3K ld bc,0C80h rl$1: diff --git a/Source/CPM3/util.z80 b/Source/CPM3/util.z80 index affa7ade..639c3312 100644 --- a/Source/CPM3/util.z80 +++ b/Source/CPM3/util.z80 @@ -3,7 +3,7 @@ maclib options.lib public addhla, bcd2bin, bin2bcd - public phex16, phex8, cout + public phex16, phex8, cout, crlf, crlf2 cseg @@ -120,12 +120,28 @@ cout: pop bc pop af ret +; +; output 1 or 2 newlines +; +crlf2: + call crlf +crlf: + ; save all incoming registers + push af + ld a,13 + call cout + ld a,10 + call cout + pop af + ret else phex16: phex8: cout: +newline2: +newline: halt endif diff --git a/Source/HBIOS/hbios.asm b/Source/HBIOS/hbios.asm index 2fb9e56b..6e696cb6 100644 --- a/Source/HBIOS/hbios.asm +++ b/Source/HBIOS/hbios.asm @@ -3423,8 +3423,10 @@ PS_DISK: ; UNIT COLUMN PRTS("Disk $") LD A,C ; MOVE UNIT NUM TO A - CALL PRTDECB ; PRINT IT, ASSUME SINGLE DIGIT - PRTS(" $") ; PAD TO NEXT COLUMN + CALL PRTDECB ; PRINT IT + CP 10 ; CHECK FOR MULTIPLE DIGITS + CALL C,PC_SPACE ; EXTRA SPACE IF NEEDED + PRTS(" $") ; PAD TO NEXT COLUMN ; ; DEVICE COLUMN LD B,BF_DIODEVICE ; FUNC=GET DEVICE INFO, UNIT NUM STILL IN C diff --git a/Source/HBIOS/ppp.asm b/Source/HBIOS/ppp.asm index 2f0cbf1d..0b45b1eb 100644 --- a/Source/HBIOS/ppp.asm +++ b/Source/HBIOS/ppp.asm @@ -691,7 +691,7 @@ PPPSD_DEVICE: PPPSD_MEDIA: ; REINITIALIZE THE CARD HERE TO DETERMINE PRESENCE CALL PPPSD_INITCARD -#IF (PPPSDTRACE == 1) +#IF (PPPSDTRACE >= 3) CALL PPPSD_PRTERR ; PRINT ANY ERRORS #ENDIF LD E,MID_HD ; ASSUME WE ARE OK diff --git a/Source/HBIOS/prp.asm b/Source/HBIOS/prp.asm index 9bd1de1b..bb95606f 100644 --- a/Source/HBIOS/prp.asm +++ b/Source/HBIOS/prp.asm @@ -126,7 +126,7 @@ PRPCON_COLS .EQU 80 ; PROPELLER VGA DISPLAY COLS PRPCON_INIT: ; CALL NEWLINE - PRTS("PRPCON: $") + PRTS("PRPCON:$") ; ; DISPLAY CONSOLE DIMENSIONS CALL PC_SPACE @@ -547,7 +547,7 @@ PRPSD_DEVICE: PRPSD_MEDIA: ; REINITIALIZE THE CARD HERE CALL PRPSD_INITCARD -#IF (PRPSDTRACE == 1) +#IF (PRPSDTRACE >= 3) CALL PRPSD_PRTERR ; PRINT ANY ERRORS #ENDIF LD E,MID_HD ; ASSUME WE ARE OK diff --git a/Source/ver.inc b/Source/ver.inc index 8b15729e..02742296 100644 --- a/Source/ver.inc +++ b/Source/ver.inc @@ -2,4 +2,4 @@ #DEFINE RMN 9 #DEFINE RUP 2 #DEFINE RTP 0 -#DEFINE BIOSVER "2.9.2-pre.36" +#DEFINE BIOSVER "2.9.2-pre.37" diff --git a/Source/ver.lib b/Source/ver.lib index 69815624..a1c3667c 100644 --- a/Source/ver.lib +++ b/Source/ver.lib @@ -3,5 +3,5 @@ rmn equ 9 rup equ 2 rtp equ 0 biosver macro - db "2.9.2-pre.36" + db "2.9.2-pre.37" endm From 3a10e437c80d5bf58dd4db73bb50e1b8079b5967 Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Sun, 15 Mar 2020 14:07:19 -0700 Subject: [PATCH 10/17] Update util.z80 --- Doc/Contrib/LinuxBuild.txt | 49 -------------------------------------- Source/CPM3/util.z80 | 4 ++-- 2 files changed, 2 insertions(+), 51 deletions(-) delete mode 100644 Doc/Contrib/LinuxBuild.txt diff --git a/Doc/Contrib/LinuxBuild.txt b/Doc/Contrib/LinuxBuild.txt deleted file mode 100644 index 6855fe0f..00000000 --- a/Doc/Contrib/LinuxBuild.txt +++ /dev/null @@ -1,49 +0,0 @@ -Assembling the RomWBW firmware under Linux. - -Note: This process is generally deprecated as it has not been maintained. -This document remains in the hope that someday it will be useful for -resurrecting a Linux build. - -Note: Updated on 6/25/2013 to eliminate the need for the separate Linux -makefile. The standard makefile now has conditionals to allow it to be -used under Windows or Linux (I hope) --WW - -This method has been used under Ubuntu Linux and may have to be adapted for -other distributions. It is a bit more involved than the Windows procedure. - -What you need -You will need the TASM assembler, make, dos2unix and cpmtools. - -The TASM assembler is shareware and the Linux version is only available as -source code from the Author. I found one bug during compiling version 3.2 for -Ubuntu. In /src/tasm.c change the reference CLK_TIC to CLOCKS_PER_SEC. -After compiling install the tasm executable to /usr/local/bin and the table -files to /usr/local/lib. If you choose to place them somewhere else you will -have to edit the "makefile.linux" file to suit. - -The make, dos2unix and cpmtools packages are found in the Linux repository and -installed as for any other package. - -Before assembly -Some changes need to be made to cater for the differences between Linux and the -DOS/Windows environments. The examples below refer to the /RomWBW/current -directory, you'll have to allow for the stable or branches directories if used. -These are all done from a terminal. (: is end of the command prompt) - -1. Go to the RomWBW Source directory.e.g. -:cd /n8vem/RomWBW/current/Source - -2. The Linux version of TASM can't handle the CR-LF line endings. So from the -command prompt use dos2unix to convert all the source files. -:~/RomWBW/current/Source dos2unix -f *.asm *.inc *.z80 *.lib diskdefs - -3. You'll have to alter the disk definitions for the cpmtools package to cater -for the new roms. Easiest way is to copy the one given in the source over the -old. This must be done as superuser. -:~/RomWBW/current/Source sudo cp diskdefs /etc/cpmtools/diskdefs - -4. From now on it's the same as using the DOS/Windows instructions in Build.txt. -Make any last changes, go to the Source directory and make -:~/RomWBW/current/Source make clean ; make - -DGG diff --git a/Source/CPM3/util.z80 b/Source/CPM3/util.z80 index 639c3312..28b39244 100644 --- a/Source/CPM3/util.z80 +++ b/Source/CPM3/util.z80 @@ -140,8 +140,8 @@ crlf: phex16: phex8: cout: -newline2: -newline: +crlf2: +crlf: halt endif From 508e766ea5cc703ff27107e8a52fba8cc0820a11 Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Mon, 16 Mar 2020 19:27:09 -0700 Subject: [PATCH 11/17] Documentation Cleanup --- ...and_guide.pdf => CPM3 Command Summary.pdf} | Bin ...s_guide.pdf => CPM3 Programmers Guide.pdf} | Bin ...system_guide.pdf => CPM3 System Guide.pdf} | Bin ...3_users_guide.pdf => CPM3 Users Guide.pdf} | Bin Doc/Contrib/Z180 Clocking.txt | 19 - ...ZCOM Manual.pdf => NZCOM Users Manual.pdf} | Bin Doc/ReadMe.txt | 43 +++ ReadMe.md | 352 ++++++++++++++++++ Source/HBIOS/cfg_dyno.asm | 2 +- 9 files changed, 396 insertions(+), 20 deletions(-) rename Doc/{cpm3_command_guide.pdf => CPM3 Command Summary.pdf} (100%) rename Doc/{cpm3_programmers_guide.pdf => CPM3 Programmers Guide.pdf} (100%) rename Doc/{cpm3_system_guide.pdf => CPM3 System Guide.pdf} (100%) rename Doc/{cpm3_users_guide.pdf => CPM3 Users Guide.pdf} (100%) delete mode 100644 Doc/Contrib/Z180 Clocking.txt rename Doc/{NZCOM Manual.pdf => NZCOM Users Manual.pdf} (100%) create mode 100644 ReadMe.md diff --git a/Doc/cpm3_command_guide.pdf b/Doc/CPM3 Command Summary.pdf similarity index 100% rename from Doc/cpm3_command_guide.pdf rename to Doc/CPM3 Command Summary.pdf diff --git a/Doc/cpm3_programmers_guide.pdf b/Doc/CPM3 Programmers Guide.pdf similarity index 100% rename from Doc/cpm3_programmers_guide.pdf rename to Doc/CPM3 Programmers Guide.pdf diff --git a/Doc/cpm3_system_guide.pdf b/Doc/CPM3 System Guide.pdf similarity index 100% rename from Doc/cpm3_system_guide.pdf rename to Doc/CPM3 System Guide.pdf diff --git a/Doc/cpm3_users_guide.pdf b/Doc/CPM3 Users Guide.pdf similarity index 100% rename from Doc/cpm3_users_guide.pdf rename to Doc/CPM3 Users Guide.pdf diff --git a/Doc/Contrib/Z180 Clocking.txt b/Doc/Contrib/Z180 Clocking.txt deleted file mode 100644 index 846c73b0..00000000 --- a/Doc/Contrib/Z180 Clocking.txt +++ /dev/null @@ -1,19 +0,0 @@ -The table below can be used to determine the correct value for CLKDIV AND CNTLB -in an Z180 (N8) configuration file. OSC Freq refers to the hardware clock -oscillator frequency you are using. You can then choose a CLKDIV value which -will result in the CPU speed (frequency) shown below the oscillator frequency. - -Using your oscillator frequency (OSC) and chosen value for CLKDIV, you can -use the appropriate column to derive values to use for CNTLB for different -baud rates. - - ----- CLKDIV = 0 ----- ----- CLKDIV = 1 ----- -OSC Freq (MHz) 6.144 12.288 18.432 6.144 12.288 18.432 -CPU Freq (MHz) 3.072 6.144 9.216 6.144 12.288 18.432 - -1200 baud 04H 05H 24H 05H 06H 25H -2400 baud 03H 04H 23H 04H 05H 24H -4800 baud 02H 03H 22H 03H 04H 23H -9600 baud 01H 02H 21H 02H 03H 22H -19200 baud 00H 01H 20H 01H 02H 21H -38400 baud --- 00H --- 00H 01H 20H \ No newline at end of file diff --git a/Doc/NZCOM Manual.pdf b/Doc/NZCOM Users Manual.pdf similarity index 100% rename from Doc/NZCOM Manual.pdf rename to Doc/NZCOM Users Manual.pdf diff --git a/Doc/ReadMe.txt b/Doc/ReadMe.txt index 9f596272..276003d6 100644 --- a/Doc/ReadMe.txt +++ b/Doc/ReadMe.txt @@ -10,6 +10,7 @@ This directory ("Doc") is part of the RomWBW System Software distribution archive. It contains documentation for components of the system. + CPM Manual ("CPM Manual.pdf") ----------------------------- @@ -18,23 +19,64 @@ considered the primary reference for system operation. The section on CP/M 2 Alteration can be ignored since this work has already been completed as part of the RomWBW distribution. + +CPM3 Command Summary ("CPM3 Command Summary.pdf") +CPM3 Programmer's Guide ("CPM3 Programmers Guide.pdf") +CPM3 System Guide ("CPM3 System Guide.pdf") +CPM3 User's Guide ("CPM3 Users Guide.pdf") +------------------------------------------------------ + +The original DRI CP/M 3.0 Operating System Documentation Set. This +should be considered the primary reference for CP/M 3 system operation. + + DDTZ Manual ("DDTZ.doc") ------------------------ Manual for the DDTZ v2.7 debug tool included on the ROM drive. + FDisk Manual ("FDisk Manual.pdf") --------------------------------- The operational manual for John Coffman's hard disk partitioning program. This program is included in RomWBW as FDISK80. + +Floppy Disk Utility Documentation ("FDU.tst") +--------------------------------------------- + +Operational documentation for the RomWBW FDU application. + + +Hard Disk Anatomy ("Hard Disk Anatomy.pdf") +------------------------------------------- + +Diagram of a CP/M & MS-DOS (FAT) hybrid hard disk layout. + + +NZCOM User's Manual ("NZCOM Users Manual.pdf") +---------------------------------------------- + +NZCOM operating system operation manual. + + RomWBW Architecture ("RomWBW Architecture.pdf") ----------------------------------------------- Document describing the architecture of the RomWBW HBIOS. It includes reference information for the HBIOS calls. + +Z180 ASCI Baud Rate Options ("Z180 ASCI Baud Rate Options.pdf") +--------------------------------------------------------------- + +The Z180 processor's ASCI serial ports have a limited set of +baud rate divisors. These divisors are relative to the CPU +clock rate. This document provides a list of the possible +baud rates for typical CPU clock rates. + + ZCPR Manual ("ZCPR Manual.pdf") ------------------------------- @@ -43,6 +85,7 @@ manual for ZCPR 1.x as included in RomWBW. The installation instructions can be ignored since that work has already been completed as part of the RomWBW distribution. + ZSDOS Manual ("ZSDOS Manual.pdf") --------------------------------- diff --git a/ReadMe.md b/ReadMe.md new file mode 100644 index 00000000..bb646135 --- /dev/null +++ b/ReadMe.md @@ -0,0 +1,352 @@ +# RomWBW + +## Z80/Z180 System Software + +Version 2.9.2 of 2020-Mar-16 + +Wayne Warthen [wwarthen@gmail.com](mailto:wwarthen@gmail.com) + +### Download + + * [RomWBW Distribution Package](https://github.com/wwarthen/RomWBW/releases) + +### Related Pages: + + * [RomWBW Architecture Document](https://www.retrobrewcomputers.org/lib/exe/fetch.php?media=software:firmwareos:romwbw:romwbw_architecture.pdf) + * [RomWBW Applications](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:apps) + * [RomWBW Errata](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:errata) + +# Summary + +RomWBW provides a complete software system for a wide variety of hobbyist Z80/Z180 CPU-based systems produced by these developer communities: + + * [Retrobrew Computers](https://www.retrobrewcomputers.org) + * [RC2014](https://rc2014.co.uk) + * [retro-comp](https://groups.google.com/forum/#!forum/retro-comp) + +General features include: + + * Banked memory services for several banking designs + * Disk drivers for RAM, ROM, Floppy, IDE, CF, and SD + * Serial drivers including UART (16550-like), ASCI, ACIA, SIO + * Video drivers including TMS9918, SY6545, MOS8563, HD6445 + * Real time clock drivers including DS1322, BQ4845 + * Multiple OS support including CP/M 2.2, ZSDOS, CP/M 3, ZPM3 + * Built-in VT-100 terminal emulation support + +RomWBW is distributed as both source code and pre-built ROM and disk images. Much of the provided software can be launched directly from the ROM firmware itself: + + * System monitor + * Operating systems (CP/M 2.2, ZSDOS) + * ROM BASIC (Nascom BASIC and Tasty BASIC) + * CamelForth + +A dynamic disk drive letter assignment mechanism allows mapping operating system drive letters to any available disk media. Additionally, mass media devices (IDE Disk, CF Card, SD Card) support the use of multiple slices (up to 256 per device). Each slice contains a complete CP/M filesystem and can be mapped independently to any drive letter. This overcomes the inherent size limitations in legacy OSes providing up to 2GB of accessible storage on a single device. + +The pre-built ROM firmware images are generally optimal for most users. However, it is also very easy to modify and build custom ROM images that fully tailor the firmware to your specific preferences. All tools required to build custom ROM firmware are included -- no need to install assemblers, etc. Any modern computer running Windows, Linux, or MacOS can be used. + +Multiple disk images are provided in the distribution. Most disk images contain a complete, bootable, ready-to-run implementation of a specific operating system. A "combo" disk image contains multiple slices, each with a full operating system implementation. If you use this disk image, you can easily pick whichever operating system you want to boot without changing media. + +# Installation + +The latest RomWBW distribution downloads are maintained on GitHub in the [RomWBW Repository](https://github.com/wwarthen/RomWBW). The fully-built distributions are found on the [releases page](https://github.com/wwarthen/RomWBW/releases) of the repository. On this page, you will probably see both pre-releases as well as normal releases. Unless you have a specific reason, I suggest you stick to the most recent normal (not pre-release) release. Expand the "Assets" drop-down for the release you want to download, then select the asset named RomWBW-vX.X.X-Package.zip. The Package asset includes all pre-built ROM and Disk images as well as full source code. The other assets called Source Code do not have the pre-built ROM or Disk Images. + +The pre-built ROM images will automatically detect and support a reasonable range of devices including serial ports, video adapters, on-board disk interfaces, and PropIO/ParPortProp boards without building a custom ROM. The distribution is a .zip archive. After downloading it to a working directory on your modern computer (Windows/Linux/Mac) use any zip tool to extract the contents of the archive. + +In general, you will just program your system's ROM chip with the appropriate ROM image from the RomWBW distribution. Depending on how you got your system, you may have already been provided with a pre-programmed ROM chip. If so, use that initially. Otherwise, you will need to use a ROM programmer to initially program your ROM chip. Please refer to the documentation that came with your ROM programmer for more information. Once you have a running RomWBW system, you can generally update your ROM to a newer version in-situ with an included ROM Flashing tool (Will Sowerbutts' FLASH application) as described in the Upgrading section below. + +Looking at the extracted distribution archive, You will see that the distribution is broken up into a few sub-directories. The Binary directory contains the pre-built ROM and disk images. The ROM image files all end in ".rom". Based on the table below, **carefully** pick the appropriate ROM image: + +| Platform | ROM Image File | Baud | Description | +| ---------------- | ---------------- | ------ | -------------------------------------------------- | +| SBC V1/V2 | SBC_std.rom | 38400 | RetroBrew SBC v1 or v2 ECB Z80 | +| Zeta V1 | ZETA_std.rom | 38400 | RetroBrew Zeta V1 Z80, ParPortProp (optional) | +| Zeta V2 | ZETA2_std.rom | 38400 | RetroBrew Zeta V2 Z80, ParPortProp (optional) | +| N8 | N8_std.rom | 38400 | RetroBrew N8 Z180, date code >= 2312 | +| Mark IV | MK4_std.rom | 38400 | RetroBrew Mark IV ECB Z180 | +| RC2014 Z80 | RCZ80_std.rom | 115200 | RC2014 w/ Z80 CPU, requires 512K RAM/ROM module | +| RC2014 Z180\* | RCZ180_ext.rom | 115200 | RC2014 w/ Z180 CPU & 512K banked RAM/ROM module | +| RC2014 Z180\* | RCZ180_nat.rom | 115200 | RC2014 w/ Z180 CPU & 512K native RAM/ROM module | +| Easy Z80 | EZZ80_std.rom | 115200 | Sergey Kiselev's Easy Z80 | +| SC126 | SCZ180_126.rom | 115200 | Stephen Cousin's SC126 Z180 | +| SC130 | SCZ180_130.rom | 115200 | Stephen Cousin's SC130 Z180 | +| SC131 | SCZ180_131.rom | 115200 | Stephen Cousin's SC131 Z180 | +| Dyno | DYNO_std.rom | 38400 | Steve Garcia's Z180 Dyno Computer | + +\*The RC2014 Z180 requires a separate RAM/ROM memory module. There are two types of these modules and you must pick the ROM for your type of memory module. The "ext" ROM supports Spencer's official 512K RAM/ROM banked memory module. The "nat" ROM supports any of the thrid-party Z180 native memory modules. + +RomWBW will automatically attempt to detect and support typical add-on components for each of the systems supported. More information on the required system configuration and optional supported components for each ROM is found in the file called "RomList.txt" in the Binary directory. All pre-built ROM images are simple 512KB binary images. If your system utilizes a 1MB ROM, you can just program the image into the first 512KB of the ROM. + +Connect a serial terminal or computer with terminal emulation software to the primary serial port of your CPU board. You may need to refer to your hardware provider's documentation for details. A null-modem connection may be required. Set the baud rate as indicated in the table above. Set the line characteristics to 8 data bits, 1 stop bit, no parity, and no flow control. If possible, select VT-100 terminal emulation. + +Upon power-up, your terminal should display a sign-on banner within 2 seconds followed by hardware inventory and discovery information. When hardware initialization is completed, a boot loader prompt allows you to choose a ROM-based operating system, system monitor, or boot from a disk device. + +Initially, you should try the ROM boot options. By selecting either CP/M 2.2 or Z-System, the operating system will be loaded from ROM and you will see the a `B>` disk prompt. In this scenario, A: will be an empty RAM disk and B: will refer to your ROM disk containing some typical applications. This provides a simple environment for learning to use your system. Be aware that files saved to the RAM disk (A:) will disappear at the next power on (RAM is generally not persistent). Also note that attempts to save files to the ROM disk (B:) will fail because ROM is not writable. + +# Upgrading + +Upgrading to a newer release of RomWBW is essentially just a matter of updating the ROM chip in your system. If you have spare ROM chips for your system and a ROM programmer, it is always safest to keep your existing, working ROM chip and program a new one with the new firmware. If the new one fails to boot, you can easily return to the known working ROM. + +Prior to attempting to reprogram your actual ROM chip, you may wish to "try" the upgrade. With RomWBW, you can upload a new system image and load it from the command line. For each ROM image file (.rom) in the Binary directory, you will also find a corresponding application file (.com). For example, for SBC_std.rom, there is also an SBC_std.com file. You can upload the .com file to your system using XModem, then simply run the .com file. You will see your system go through the normal startup process just like it was started from ROM. However, your ROM has not been updated and the next time you boot your system, it will revert to the system image contained in ROM. + +If you do not have easy access to a ROM programmer, it is entirely possible to reprogram your system ROM using the FLASH utility from Will Sowerbutts. This application called FLASH.COM can be found on the ROM drive of any running system. In this case, you would need to transfer the new ROM image (.rom) over to your system using XModem. The ROM image will be too large to fit on your RAM drive, so you will need to transfer it to a larger storage drive. Once the ROM image is on your system, you can use the FLASH application to update your ROM: + +``` +E>xm r rom.img + +XMODEM v12.5 - 07/13/86 +RBC, 28-Aug-2019 [WBW], ASCI + +Receiving: E0:ROM.IMG +7312k available for uploads +File open - ready to receive +To cancel: Ctrl-X, pause, Ctrl-X + +Thanks for the upload + +E>flash write rom.img +FLASH4 by Will Sowerbutts version 1.2.3 + +Using RomWBW (v2.6+) bank switching. +Flash memory chip ID is 0xBFB7: 39F040 +Flash memory has 128 sectors of 4096 bytes, total 512KB +Write complete: Reprogrammed 2/128 sectors. +Verify (128 sectors) complete: OK! +``` + +Obviously, there is some risk to this approach since any issues with the programming or ROM image could result in a non-functional system. + +To confirm your ROM chip has been successfully updated, restart your system and boot an operating system from ROM. Do not boot from a disk device yet. Review the boot messages to see if any issues have occurred. + +Once you are satisfied that the ROM is working well, you will need to update the system images and RomWBW custom applications on your disk drives. The system images and custom applications are matched to the RomWBW ROM firmware in use. If you attempt to use a disk or applications that have not been updated to match the current ROM firmware, you are likely to have odd problems. + +The simplest way to update your disk media is to just use your modern computer to overwrite the entire media with the latest disk image of your choice. This process is described below in the Disk Images section. If you wish to update existing disk media in your system, you need to perform the following steps. + +If the disk is bootable, you need to update the system tracks of the disk. This is done using a SYSCOPY command such as `SYSCOPY C:=B:ZSYS.SYS`. For a ZSDOS boot disk, use ZSYS.SYS. For a CP/M 2.2 disk, use CPM.SYS. For a CP/M 3 or ZPM3 disk, use CPMLDR.SYS. CPMLDR.SYS is not provided on the ROM disk, so you would need to upload it from the distribution. + +Finally, if you have copies of any of the RomWBW custom applications on your hard disk, you need to update them with the latest copies. The following applications are found on your ROM disk. Use COPY to copy them over any older versions of the app on your disk: + + * ASSIGN.COM + * FORMAT.COM + * OSLDR.COM + * SYSCOPY.COM + * TALK.COM + * FDU.COM (was FDTST.COM) + * XM.COM + * MODE.COM + * RTC.COM + * TIMER.COM + * INTTEST.COM + +For example: `B>COPY ASSIGN.COM C:` + +# Using Disks + +While the RAM/ROM disks provide a functional system, they are not useful in the long term because you cannot save data across power cycles. They are also constrained by limited space. + +If your system has working disk devices, then you should notice some drive letters assigned at startup. The specific drive letters assigned will depend on your system configuration. Note that there **must** be media installed in IDE, CF, SD interfaces in order for drive letters to be assigned at boot. + +To use a disk device, you will need to initialize the directory of the filesystem. This is done using the CLRDIR application. For example if your C: drive has been assigned to a storage device, you would use `CLRDIR C:` to initialize C: and prepare it hold files. Note that CLRDIR will prompt you for confirmation and you must respond with a **capital** 'Y' to confirm. Once CLDIR has completed, you can copy files onto the drive, for example `COPY *.* C:`. + +If you are using a floppy drive, you will need to format your floppy disk prior to use. This is only required for floppy disks, not hard disk, CF Cards, or SD Cards, etc. To format a floppy drive, you can use the interactive application FDU. FDU is not terribly user friendly, but is generally documented in the file "FDU.txt" found in the Doc directory of the distribution. + +## Disk Images + +As mentioned previously, RomWBW includes a variety of disk images that contain a full set of applications for the operating systems supported. It is generally easier to use these disk images instead of copying all the files over using XModem. You use your modern computer (Windows, Linux, MacOS) to place the disk image onto the disk media, then just move the media over to your system. In this scenario you **do not** run CLRDIR on the directory of the drive letter(s). + +To copy the disk image files onto your actual media (floppy disk, CF Card, SD Card, etc.), you need to use an image writing utility on your modern computer. Your modern computer will need to have an appropriate interface or slot that accepts the media. To actually copy the image, you can use the `dd` command on Linux or MacOS. On Windows, in the "Tools" directory of the distribution there are two tools you can use. For floppy media, you can use RawWriteWin and for hard disk media, you can use Win32DiskImager. In all cases, the image file should be written to the media starting at the very first block or sector of the media. This will destroy any other data on the media. + +The disk image files are found in the Binary directory of the distribution. Floppy disk images are prefixed with "fd_" and hard disk images are prefixed with "hd_". The floppy images are specifically for 1.44M floppy media only. Each disk image has the complete set of normal applications and tools distributed with the associated operating system or application suite. + +The following table shows the disk image files available. Note that the images in the "Hard" column are fine for use on CF Cards, SD Cards, as well as real spinning hard disks. + +| Floppy | Hard | Description | +| --------------- | --------------- | -------------------------------------- | +| fd_cpm22.img | hd_cpm22.img | DRI CP/M 2.2 bootable disk | +| fd_zsdos.img | hd_zsdos.img | ZSDOS 1.1 bootable disk | +| fd_nzcom.img | hd_nzcom.img | NZCOM bootable disk\* | +| fd_cpm3 | hd_cpm3.img | DRI CP/M 3 bootable disk | +| fd_zpm3 | hd_zpm3.img | ZPM3 bootable disk | + +\*NZCOM requires some configuration prior to running it. Refer to the Operating Systems section below for more information. + +Note that unlike the ROM firmware, you do ** not** need to choose a disk image specific to your hardware. Because the RomWBW firmware provides a hardware abstraction layer, all hard disk images will work on all hardware variations. Yes, this means you can remove an SD Card from one system and put it in a different system. The only constraint is that the applications on the disk media must be up to date with the firmware on the system being used. + +All of the disk images that indicate they are bootable will boot from disk as is. You do not need to run `SYSCOPY` on them to make them bootable. However, if you upgrade your ROM, you should use `SYSCOPY` to update the system tracks. + +# General Usage + +Each of the operating systems and ROM applications included with RomWBW are sophisticated tools in their own right. It is not reasonable to document their usage here. However, you will find complete manuals in PDF format in the Doc directory of the distribution. The intention of this section is to document the RomWBW specific enhancements to these OSes. + +## ROM Disk + +The ROM disk contents have been optimized to provide a core set of tools and applications that are helpful for either CP/M 2.2 and ZSDOS. Since ZSDOS is CP/M 2.2 compatible, this works fairly well. However, you will find some files on the ROM disk that will work with ZSDOS, but will not work on CP/M 2.2. For example, `LDDS`, which loads the ZSDOS date/time stamper will only run on ZSDOS. + +## Drive Letter Assignment + +In legacy CP/M-type operating systems, drive letters were generally mapped to disk drives in a completely fixed way. For example, drive A: would **always** refer to the first floppy drive. Since RomWBW supports a wide variety of hardware configurations, it implements a much more flexible drive letter assignment mechanism so that any drive letter can be assigned to any disk device. + +At boot, you will notice that RomWBW automatically assigns drive letters to the available disk devices. These assignments are displayed during the startup of the selected operating system. Additionally, you can review the current drive assignments at any time using the `ASSIGN` command. CP/M 3 and ZPM3 do not automatically display the assignments at startup, but you can use `ASSIGN` do display them. + +The drive letter assignments **do not** change during an OS session unless you use the `ASSIGN` command yourself to do it. Additionally, the assignments at boot will stay the same on each boot as long as you do not make changes to your hardware configuration. Note that the assignments **are** dependent on the media currently inserted in hard disk drives. So, notice that if you insert or remove an SD Card or CF Card, the drive assignments will change. Since drive letter assignments can change, you must be careful when doing destructive things like using `CLRDIR` to make sure the drive letter you use is referring to the desired media. + +When performing a ROM boot of an operating system, note that A: will be your RAM disk and B: will be your ROM disk. When performing a disk boot, the disk you are booting from will be assigned to A: and the rest of the drive letters will be offset to accommodate this. This is done because most legacy operating systems expect that A: will be the boot drive. + +## Slices + +The vintage operating systems included with RomWBW were produced at a time when mass storage devices were quite small. CP/M 2.2 could only handle filesystems up to 8MB. In order to achieve compatibility across all of the operating systems supported by RomWBW, the hard disk filesystem format used is 8MB. This ensures any filesystem will be accessible to any of the operating systems. + +Since storage devices today are quite large, RomWBW implements a mechanism called slicing to allow up to 256 8MB filesystems on a single large storage device. This allows up to 2GB of useable space on a single media. You can think of slices as a way to refer to the first 256 8MB chunks of space on a single media. + +Of course, the problem is that CP/M-like operating systems have only 16 drive letters (A:-P:) available. Under the covers, RomWBW allows you to use any drive letter to refer to any slice of any media. The `ASSIGN` command is provided to allow you to view or change the drive letter mappings at any time. At startup, the operating system will automatically allocate a reasonable number of drive letters to the available storage devices. The allocation will depend on the number of large storage devices available at boot. For example, if you have only one hard disk type media, you will see that 8 drive letters are assigned to the first 8 slices of that media. If you have two large storage devices, you will see that each device is allocated four drive letters. + +Referring to slices within a storage device is done by appending a :n where n is the device relative slice number from 0-255. For example, if you have an IDE device, it will show up as IDE0: in the boot message meaning the first IDE device. To refer to the second slice of IDE0, you would type "IDE0:1". So, if I wanted to use drive letter L: to refer to the second slice of IDE0, I could use the command `ASSIGN L:=IDE0:1`. + +There are a couple of rules to be aware of when assigning drive letters. First, you may only refer to a specific device/slice with one drive letter. Said another way, you cannot have multiple drive letters referring to a single device/slice at the same time. Second, there must always be a drive assigned to A:. Any attempt to violate these rules will be blocked by the `ASSIGN` command. + +Unlike MS-DOS partitions, slices are not allocated -- there is no partitioning of slices. Think of every hard disk type device as having a pre-allocated set of 256 8MB slices at the start of the media. You can refer to any of them simply by assigning a drive letter. RomWBW will not check to see if there is anything else on the hard disk in the slice you are referring to, nor will it verify that the hard disk media is large enough to have a slice at the location you refer to. If you attempt to write past the end of your media, you will get an I/O error displayed, so you will know if you make a mistake. There is no tracking of your use of slices -- you will need to keep track of your use of slices yourself. + +Nothing automatically initializes a slice as a file system. You must do that yourself using `CLRDIR`. Since CLRDIR works on drive letters, make absolutely sure you know what media and slice are assigned to that drive letter before using `CLRDIR`. + +While it probably obvious, you cannot use slices on any media less than 8MB in size. Specifically, you cannot slice RAM disk, ROM disk, floppy disks, etc. + +# RomWBW Applications + +A typical set of CP/M-80 2.2 and Z-System applications are included on the ROM file system. The Doc directory of the distribution contains the CP/M, ZSDOS, and ZCPR user manuals which provide the primary usage information. Note that the Z-System applications will generally not run under CP/M. + +The following custom applications are included on the ROM disk to enhance the operation of RomWBW: + +| Application | Description | +| ----------- | -------------------------------------------------------------- | +| ASSIGN | Add, change, and delete drive letter assignments. Use ASSIGN /? for usage instructions. | +| SYSCOPY | Copy system image to a device to make it bootable. Use SYSCOPY with no parms for usage instructions. | +| FDU | Format and test floppy disks. Menu driven interface. | +| OSLDR | Load a new OS on the fly. For example, you can switch to Z-System when running CP/M. Use OSLDR with no parms for usage instructions. | +| FORMAT | Will someday be a command line tool to format floppy disks. Currently does nothing! | +| MODE | Reconfigures serial ports dynamically. | +| XM | XModem file transfer program adapted to hardware. Automatically uses primary serial port on system. | +| FDISK80 | John Coffman's Z80 hard disk partitioning tool. See documentation in Doc directory. | +| FAT | Access MS-DOS FAT filesystems from RomWBW (based on FatFs). | +| FLASH | Will Sowerbutts' in-situ ROM programming utility. | +| CLRDIR | Format the directory areas of a CP/M disk. | + +Some custom applications do not fit on the ROM disk. They are found on the disk image files or the individual files can be found in the Binary\\Apps directory of the distribution. + +| Application | Description | +| ----------- | -------------------------------------------------------------- | +| TUNE | Play .PT2, .PT3, .MYM audio files. | +| FAT | Access MS-DOS FAT filesystems from RomWBW (based on FatFs). | + +There is additional documentation on some of these applications at the [RomWBW Applications Page](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:apps). + +# Operating System Options + +One of the primary goals of RomWBW is to expose a set of generic hardware functions that make it easy to adapt operating systems to any hardware supported by RomWBW. As a result, there are now 5 operating systems that have been adapted to run under RomWBW. The adaptations are identical for all hardware supported by RomWBW because RomWBW hides all hardware specifics from the operating system. + +Note that all of the operating systems included with RomWBW support the same basic filesystem format. As as result, a formatted filesystem will be accessible to any operating system. The only possible issue is that if you turn of date/time stamping using the newer OSes, the older OSes will not understand this. Files will not be corrupted, but the date/time stamps may be lost. + +The following sections briefly describe the operating system options currently available. + +## Digital Research CP/M 2.2 + +This is the most widely used variant of the Digital Research operating system. It has the most basic feature set, but is essentially the compatibility metric for all other CP/M-like operating systems including all of those listed below. The Doc directory contains a manual for CP/M usage ("CPM Manual.pdf"). If you are new to the CP/M world, I would recommend using this CP/M variant to start with simply because it is the most stable and you are less likely to encounter problems. + +## ZSDOS 1.1 + +ZSDOS is the most popular non-DRI CP/M "clone" which is generally referred to as Z-System. Z-System is intended to be an enhanced version of CP/M and should run all CP/M 2.2 applications. It is optimized for the Z80 CPU (as opposed to 8080 for CP/M) and has some significant improvements such as date/time stamping of files. For further information on the RomWBW implementation of Z-System, see the wiki page [Z-System Notes](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:zsystem). Additionally, the official documentation for Z-System is included in the RomWBW distribution Doc directory ("ZSDOS Manual.pdf" and "ZCPR Manual.pdf"). + +## NZCOM Automatic Z-System + +NZCOM is a much further refined version of Z-System (ZCPR 3.4). NZCOM was sold as an enhancement for existing users of CP/M 2.2 or ZSDOS. For this reason, (by design) NZCOM does not provide a way to boot directly from disk. Rather, it is loaded after the system boots into a host OS. On the RomWBW NZCOM disk images, the boot OS is ZSDOS 1.1. + +To use, NZCOM, you must run through a simple configuration process. This is well documented in the NZCOM manual in the "NZCOM Users Manual.pdf" file in the RomWBW Doc directory. Additionally, there are instructions for automatically launching NZCOM when the disk is booted under the host OS via an auto command submission process. + +## Digital Research CP/M 3 + +This is the Digital Research follow-up product to their very popular CP/M 2.2 operating system. While highly compatible with CP/M 2.2, it features many enhancements. It makes better use of banked memory to increase the user program space (TPA). It also has a new suite of support tools and help system. + +Note that to make a CP/M 3 boot disk, you actually place CPMLDR.SYS on the system tracks of the disk. You do not place CPM3.SYS on the system tracks. + +## Simeon Cran's ZPM3 + +ZPM3 is an interesting combination of the features of both CP/M 3 and ZCPR 3. Essentially, it has the features of and compatibility with both. + +Like CP/M 3, to make ZPM3 boot disk, you put CPM3.SYS on the system tracks of the disk. + +## FreeRTOS + +Note that Phillip Stevens has also ported FreeRTOS to run under RomWBW. FreeRTOS is not provided in the RomWBW distribution, but is available from Phillip. + +# ROM Customization + +The pre-built ROM images are configured for the basic capabilities of each platform. Additionally, some of the typical add-on hardware for each platform will be automatically detected and used. If you want to go beyond this, RomWBW provides a very flexible configuration mechanism based on configuration files. Creating a customized ROM requires running a build script, but it is quite easy to do. + +Essentially, the creation of a custom ROM is accomplished by updating a small configuration file, then running a script to compile the software and generate the custom ROM image. There are build scripts for Windows, Linux, and MacOS to accommodate virtually all users. All required build tools (compilers, assemblers, etc.) are included in the distribution, so it is not necessary to setup a build environment on your computer. + +The process for building a custom ROM is documented in the ReadMe.txt file in the Source directory of the distribution. + +For those who are interested in more than basic system customization, note that all source code is provided (including the operating systems). Modification of the source code is considered an expert level task and is left to the reader to pursue. + +Note that the ROM customization process does not apply to UNA. All UNA customization is performed within the ROM setup script. + +# UNA Hardware BIOS + +John Coffman has produced a new generation of hardware BIOS called UNA. The standard RomWBW distribution includes it's own hardware BIOS. However, RomWBW can alternatively be constructed with UNA as the hardware BIOS portion of the ROM. If you wish to use the UNA variant of RomWBW, then just program your ROM with the ROM image called "UNA_std.rom" in the Binary directory. This one image is suitable on **all** of the platforms and hardware UNA supports. + +UNA is customized dynamically using a ROM based setup routine and the setup is persisted in the system NVRAM of the RTC chip. This means that the single UNA-based ROM image can be used on most of the RetroBrew platforms and is easily customized. UNA also supports FAT file system access that can be used for in-situ ROM programming and loading system images. + +While John is likely to enhance UNA over time, there are currently a few things that UNA does not support: + + * Floppy Drives + * Terminal Emulation + * Zeta 1, N8, RC2014, Easy Z80, and Dyno Systems + * Some older support boards + +The UNA version embedded in RomWBW is the latest production release of UNA. RomWBW will be updated with John's upcoming UNA release with support for VGA3 as soon as it reaches production status. + +Please refer to the [UNA BIOS Firmware Page](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:una:start) for more information on UNA. + +# RomWBW Distribution + +## Distribution Directory Layout + +The RomWBW distribution is a compressed zip archive file organized in a set of directories. Each of these directories has it's own ReadMe.txt file describing the contents in detail. In summary, these directories are: + +| Application | Description | +| ----------- | -------------------------------------------------------------- | +| Binary | The final output files of the build process are placed here. Most importantly, are the ROM images with the file names ending in ".rom". | +| Doc | Contains various detailed documentation including the operating systems, RomWBW architecture, etc. | +| Source | Contains the source code files used to build the software and ROM images. | +| Tools | Contains the MS Windows programs that are used by the build process or that may be useful in setting up your system. | + +## Source Code Respository + +All source code and distributions are maintained on GitHub. Code contributions are very welcome. + +[RomWBW GitHub Repository](https://github.com/wwarthen/RomWBW|https://github.com/wwarthen/RomWBW) + +# Acknowledgements + +While I have heavily modified much of the code, I want to acknowledge that much of the work is derived from the work of others in the RetroBrew Computers Community including Andrew Lynch, Dan Werner, Max Scane, David Giles, John Coffman, and probably many others I am not clearly aware of (let me know if I omitted someone!). + +I especially want to credit Douglas Goodall for contributing code, time, testing, and advice. He created an entire suite of application programs to enhance the use of RomWBW. However, he is looking for someone to continue the maintenance of these applications and they have become unusable due to changes within RomWBW. As of RomWBW 2.6, these applications are no longer provided. + + * David Giles contributed support for the CSIO support in the SD Card driver. + * Ed Brindley contributed some of the code that supports the RC2014 platform. + * Phil Summers contributed Forth and BASIC in ROM as well as a long list of general code enhancements. + * Curt Mayer contributed the Linux / MacOS build process. + * UNA BIOS is a product of John Coffman. + +Contributions of all kinds to RomWBW are very welcome. + +# Getting Assistance + +The best way to get assistance with RomWBW or any aspect of the RetroBrew Computers projects is via the community forums: + + * [RetroBrew Computers Forum](https://www.retrobrewcomputers.org/forum/) + * [RC2014 Google Group](https://groups.google.com/forum/#!forum/rc2014-z80) + * [retro-comp Google Group](https://groups.google.com/forum/#!forum/retro-comp) + +Submission of issues and bugs are welcome at the [RomWBW GitHub Repository](https://github.com/wwarthen/RomWBW). + +Also feel free to email Wayne Warthen at [wwarthen@gmail.com](mailto:wwarthen@gmail.com). diff --git a/Source/HBIOS/cfg_dyno.asm b/Source/HBIOS/cfg_dyno.asm index 368da1be..03e7aaa0 100644 --- a/Source/HBIOS/cfg_dyno.asm +++ b/Source/HBIOS/cfg_dyno.asm @@ -1,6 +1,6 @@ ; ;================================================================================================== -; ROMWBW 2.X CONFIGURATION DEFAULTS FOR RC2014 +; ROMWBW 2.X CONFIGURATION DEFAULTS FOR DYNO ;================================================================================================== ; ; THIS FILE CONTAINS THE FULL SET OF DEFAULT CONFIGURATION SETTINGS FOR THE PLATFORM From ac12f7fe1ac54bc497421d6be572eaa630f03b4e Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Tue, 17 Mar 2020 12:03:16 -0700 Subject: [PATCH 12/17] Documentation Update --- Doc/GettingStarted.pdf | Bin 0 -> 126512 bytes ReadMe.md | 903 +++++++++++++++++++++++++---------- ReadMe.txt | 1020 +++++++++++++++++++++++++++++----------- 3 files changed, 1394 insertions(+), 529 deletions(-) create mode 100644 Doc/GettingStarted.pdf diff --git a/Doc/GettingStarted.pdf b/Doc/GettingStarted.pdf new file mode 100644 index 0000000000000000000000000000000000000000..e7c0f0ae9d3d829c6ae12a75ce52c56d222bb64f GIT binary patch literal 126512 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∋4vR>-%eCFLa-m_qZ(8Gkh14XpZI(n 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 ### Download - * [RomWBW Distribution Package](https://github.com/wwarthen/RomWBW/releases) + - [RomWBW Distribution + Package](https://github.com/wwarthen/RomWBW/releases) -### Related Pages: +### Related Pages - * [RomWBW Architecture Document](https://www.retrobrewcomputers.org/lib/exe/fetch.php?media=software:firmwareos:romwbw:romwbw_architecture.pdf) - * [RomWBW Applications](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:apps) - * [RomWBW Errata](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:errata) + - [RomWBW Architecture + Document](https://www.retrobrewcomputers.org/lib/exe/fetch.php?media=software:firmwareos:romwbw:romwbw_architecture.pdf) + - [RomWBW + Applications](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:apps) + - [RomWBW + Errata](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:errata) -# Summary +# Overview -RomWBW provides a complete software system for a wide variety of hobbyist Z80/Z180 CPU-based systems produced by these developer communities: +RomWBW provides a complete software system for a wide variety of +hobbyist Z80/Z180 CPU-based systems produced by these developer +communities: - * [Retrobrew Computers](https://www.retrobrewcomputers.org) - * [RC2014](https://rc2014.co.uk) - * [retro-comp](https://groups.google.com/forum/#!forum/retro-comp) + - [Retrobrew Computers](https://www.retrobrewcomputers.org) + - [RC2014](https://rc2014.co.uk) + - [retro-comp](https://groups.google.com/forum/#!forum/retro-comp) General features include: - * Banked memory services for several banking designs - * Disk drivers for RAM, ROM, Floppy, IDE, CF, and SD - * Serial drivers including UART (16550-like), ASCI, ACIA, SIO - * Video drivers including TMS9918, SY6545, MOS8563, HD6445 - * Real time clock drivers including DS1322, BQ4845 - * Multiple OS support including CP/M 2.2, ZSDOS, CP/M 3, ZPM3 - * Built-in VT-100 terminal emulation support - -RomWBW is distributed as both source code and pre-built ROM and disk images. Much of the provided software can be launched directly from the ROM firmware itself: - - * System monitor - * Operating systems (CP/M 2.2, ZSDOS) - * ROM BASIC (Nascom BASIC and Tasty BASIC) - * CamelForth - -A dynamic disk drive letter assignment mechanism allows mapping operating system drive letters to any available disk media. Additionally, mass media devices (IDE Disk, CF Card, SD Card) support the use of multiple slices (up to 256 per device). Each slice contains a complete CP/M filesystem and can be mapped independently to any drive letter. This overcomes the inherent size limitations in legacy OSes providing up to 2GB of accessible storage on a single device. - -The pre-built ROM firmware images are generally optimal for most users. However, it is also very easy to modify and build custom ROM images that fully tailor the firmware to your specific preferences. All tools required to build custom ROM firmware are included -- no need to install assemblers, etc. Any modern computer running Windows, Linux, or MacOS can be used. - -Multiple disk images are provided in the distribution. Most disk images contain a complete, bootable, ready-to-run implementation of a specific operating system. A "combo" disk image contains multiple slices, each with a full operating system implementation. If you use this disk image, you can easily pick whichever operating system you want to boot without changing media. + - Banked memory services for several banking designs + - Disk drivers for RAM, ROM, Floppy, IDE, CF, and SD + - Serial drivers including UART (16550-like), ASCI, ACIA, SIO + - Video drivers including TMS9918, SY6545, MOS8563, HD6445 + - Real time clock drivers including DS1322, BQ4845 + - Multiple OS support including CP/M 2.2, ZSDOS, CP/M 3, ZPM3 + - Built-in VT-100 terminal emulation support + +RomWBW is distributed as both source code and pre-built ROM and disk +images. Some of the provided software can be launched directly from the +ROM firmware itself: + + - System monitor + - Operating systems (CP/M 2.2, ZSDOS) + - ROM BASIC (Nascom BASIC and Tasty BASIC) + - ROM Forth + +A dynamic disk drive letter assignment mechanism allows mapping +operating system drive letters to any available disk media. +Additionally, mass media devices (IDE Disk, CF Card, SD Card) support +the use of multiple slices (up to 256 per device). Each slice contains a +complete CP/M filesystem and can be mapped independently to any drive +letter. This overcomes the inherent size limitations in legacy OSes +providing up to 2GB of accessible storage on a single device. + +The pre-built ROM firmware images are generally optimal for most users. +However, it is also very easy to modify and build custom ROM images that +fully tailor the firmware to your specific preferences. All tools +required to build custom ROM firmware are included – no need to install +assemblers, etc. Any modern computer running Windows, Linux, or MacOS +can be used. + +Multiple disk images are provided in the distribution. Most disk images +contain a complete, bootable, ready-to-run implementation of a specific +operating system. A “combo” disk image contains multiple slices, each +with a full operating system implementation. If you use this disk image, +you can easily pick whichever operating system you want to boot without +changing media. # Installation -The latest RomWBW distribution downloads are maintained on GitHub in the [RomWBW Repository](https://github.com/wwarthen/RomWBW). The fully-built distributions are found on the [releases page](https://github.com/wwarthen/RomWBW/releases) of the repository. On this page, you will probably see both pre-releases as well as normal releases. Unless you have a specific reason, I suggest you stick to the most recent normal (not pre-release) release. Expand the "Assets" drop-down for the release you want to download, then select the asset named RomWBW-vX.X.X-Package.zip. The Package asset includes all pre-built ROM and Disk images as well as full source code. The other assets called Source Code do not have the pre-built ROM or Disk Images. - -The pre-built ROM images will automatically detect and support a reasonable range of devices including serial ports, video adapters, on-board disk interfaces, and PropIO/ParPortProp boards without building a custom ROM. The distribution is a .zip archive. After downloading it to a working directory on your modern computer (Windows/Linux/Mac) use any zip tool to extract the contents of the archive. - -In general, you will just program your system's ROM chip with the appropriate ROM image from the RomWBW distribution. Depending on how you got your system, you may have already been provided with a pre-programmed ROM chip. If so, use that initially. Otherwise, you will need to use a ROM programmer to initially program your ROM chip. Please refer to the documentation that came with your ROM programmer for more information. Once you have a running RomWBW system, you can generally update your ROM to a newer version in-situ with an included ROM Flashing tool (Will Sowerbutts' FLASH application) as described in the Upgrading section below. - -Looking at the extracted distribution archive, You will see that the distribution is broken up into a few sub-directories. The Binary directory contains the pre-built ROM and disk images. The ROM image files all end in ".rom". Based on the table below, **carefully** pick the appropriate ROM image: - -| Platform | ROM Image File | Baud | Description | -| ---------------- | ---------------- | ------ | -------------------------------------------------- | -| SBC V1/V2 | SBC_std.rom | 38400 | RetroBrew SBC v1 or v2 ECB Z80 | -| Zeta V1 | ZETA_std.rom | 38400 | RetroBrew Zeta V1 Z80, ParPortProp (optional) | -| Zeta V2 | ZETA2_std.rom | 38400 | RetroBrew Zeta V2 Z80, ParPortProp (optional) | -| N8 | N8_std.rom | 38400 | RetroBrew N8 Z180, date code >= 2312 | -| Mark IV | MK4_std.rom | 38400 | RetroBrew Mark IV ECB Z180 | -| RC2014 Z80 | RCZ80_std.rom | 115200 | RC2014 w/ Z80 CPU, requires 512K RAM/ROM module | -| RC2014 Z180\* | RCZ180_ext.rom | 115200 | RC2014 w/ Z180 CPU & 512K banked RAM/ROM module | -| RC2014 Z180\* | RCZ180_nat.rom | 115200 | RC2014 w/ Z180 CPU & 512K native RAM/ROM module | -| Easy Z80 | EZZ80_std.rom | 115200 | Sergey Kiselev's Easy Z80 | -| SC126 | SCZ180_126.rom | 115200 | Stephen Cousin's SC126 Z180 | -| SC130 | SCZ180_130.rom | 115200 | Stephen Cousin's SC130 Z180 | -| SC131 | SCZ180_131.rom | 115200 | Stephen Cousin's SC131 Z180 | -| Dyno | DYNO_std.rom | 38400 | Steve Garcia's Z180 Dyno Computer | - -\*The RC2014 Z180 requires a separate RAM/ROM memory module. There are two types of these modules and you must pick the ROM for your type of memory module. The "ext" ROM supports Spencer's official 512K RAM/ROM banked memory module. The "nat" ROM supports any of the thrid-party Z180 native memory modules. - -RomWBW will automatically attempt to detect and support typical add-on components for each of the systems supported. More information on the required system configuration and optional supported components for each ROM is found in the file called "RomList.txt" in the Binary directory. All pre-built ROM images are simple 512KB binary images. If your system utilizes a 1MB ROM, you can just program the image into the first 512KB of the ROM. - -Connect a serial terminal or computer with terminal emulation software to the primary serial port of your CPU board. You may need to refer to your hardware provider's documentation for details. A null-modem connection may be required. Set the baud rate as indicated in the table above. Set the line characteristics to 8 data bits, 1 stop bit, no parity, and no flow control. If possible, select VT-100 terminal emulation. - -Upon power-up, your terminal should display a sign-on banner within 2 seconds followed by hardware inventory and discovery information. When hardware initialization is completed, a boot loader prompt allows you to choose a ROM-based operating system, system monitor, or boot from a disk device. - -Initially, you should try the ROM boot options. By selecting either CP/M 2.2 or Z-System, the operating system will be loaded from ROM and you will see the a `B>` disk prompt. In this scenario, A: will be an empty RAM disk and B: will refer to your ROM disk containing some typical applications. This provides a simple environment for learning to use your system. Be aware that files saved to the RAM disk (A:) will disappear at the next power on (RAM is generally not persistent). Also note that attempts to save files to the ROM disk (B:) will fail because ROM is not writable. +The latest RomWBW distribution downloads are maintained on GitHub in the +[RomWBW Repository](https://github.com/wwarthen/RomWBW). The fully-built +distributions are found on the [releases +page](https://github.com/wwarthen/RomWBW/releases) of the repository. On +this page, you will probably see both pre-releases as well as normal +releases. Unless you have a specific reason, I suggest you stick to the +most recent normal (not pre-release) release. Expand the “Assets” +drop-down for the release you want to download, then select the asset +named RomWBW-vX.X.X-Package.zip. The Package asset includes all +pre-built ROM and Disk images as well as full source code. The other +assets called Source Code do not have the pre-built ROM or Disk Images. + +The pre-built ROM images will automatically detect and support a +reasonable range of devices including serial ports, video adapters, +on-board disk interfaces, and PropIO/ParPortProp boards without building +a custom ROM. The distribution is a .zip archive. After downloading it +to a working directory on your modern computer (Windows/Linux/Mac) use +any zip tool to extract the contents of the archive. + +In general, you will just program your system’s ROM chip with the +appropriate ROM image from the RomWBW distribution. Depending on how you +got your system, you may have already been provided with a +pre-programmed ROM chip. If so, use that initially. Otherwise, you will +need to use a ROM programmer to initially program your ROM chip. Please +refer to the documentation that came with your ROM programmer for more +information. Once you have a running RomWBW system, you can generally +update your ROM to a newer version in-situ with an included ROM Flashing +tool (Will Sowerbutts’ FLASH application) as described in the Upgrading +section below. + +Looking at the extracted distribution archive, You will see that the +distribution is broken up into a few sub-directories. The Binary +directory contains the pre-built ROM and disk images. The ROM image +files all end in “.rom”. Based on the table below, **carefully** pick +the appropriate ROM image: + +| Platform | ROM Image File | Baud | Description | +| ------------- | --------------- | ------ | ----------------------------------------------- | +| SBC V1/V2 | SBC\_std.rom | 38400 | RetroBrew SBC v1 or v2 ECB Z80 | +| Zeta V1 | ZETA\_std.rom | 38400 | RetroBrew Zeta V1 Z80, ParPortProp (optional) | +| Zeta V2 | ZETA2\_std.rom | 38400 | RetroBrew Zeta V2 Z80, ParPortProp (optional) | +| N8 | N8\_std.rom | 38400 | RetroBrew N8 Z180, date code \>= 2312 | +| Mark IV | MK4\_std.rom | 38400 | RetroBrew Mark IV ECB Z180 | +| RC2014 Z80 | RCZ80\_std.rom | 115200 | RC2014 w/ Z80 CPU, requires 512K RAM/ROM module | +| RC2014 Z180\* | RCZ180\_ext.rom | 115200 | RC2014 w/ Z180 CPU & 512K banked RAM/ROM module | +| RC2014 Z180\* | RCZ180\_nat.rom | 115200 | RC2014 w/ Z180 CPU & 512K native RAM/ROM module | +| Easy Z80 | EZZ80\_std.rom | 115200 | Sergey Kiselev’s Easy Z80 | +| SC126 | SCZ180\_126.rom | 115200 | Stephen Cousin’s SC126 Z180 | +| SC130 | SCZ180\_130.rom | 115200 | Stephen Cousin’s SC130 Z180 | +| SC131 | SCZ180\_131.rom | 115200 | Stephen Cousin’s SC131 Z180 | +| Dyno | DYNO\_std.rom | 38400 | Steve Garcia’s Z180 Dyno Computer | + +\*The RC2014 Z180 requires a separate RAM/ROM memory module. There are +two types of these modules and you must pick the ROM for your type of +memory module. The “ext” ROM supports Spencer’s official 512K RAM/ROM +banked memory module. The “nat” ROM supports any of the thrid-party Z180 +native memory modules. + +RomWBW will automatically attempt to detect and support typical add-on +components for each of the systems supported. More information on the +required system configuration and optional supported components for each +ROM is found in the file called “RomList.txt” in the Binary directory. +All pre-built ROM images are simple 512KB binary images. If your system +utilizes a 1MB ROM, you can just program the image into the first 512KB +of the ROM. + +Connect a serial terminal or computer with terminal emulation software +to the primary serial port of your CPU board. You may need to refer to +your hardware provider’s documentation for details. A null-modem +connection may be required. Set the baud rate as indicated in the table +above. Set the line characteristics to 8 data bits, 1 stop bit, no +parity, and no flow control. If possible, select VT-100 terminal +emulation. + +Upon power-up, your terminal should display a sign-on banner within 2 +seconds followed by hardware inventory and discovery information. When +hardware initialization is completed, a boot loader prompt allows you to +choose a ROM-based operating system, system monitor, application, or +boot from a disk device. + +Initially, you should try the ROM boot options. By selecting either CP/M +2.2 or Z-System, the operating system will be loaded from ROM and you +will see the a `B>` disk prompt. In this scenario, A: will be an empty +RAM disk and B: will refer to your ROM disk containing some typical +applications. This provides a simple environment for learning to use +your system. Be aware that files saved to the RAM disk (A:) will +disappear at the next power on (RAM is generally not persistent). Also +note that attempts to save files to the ROM disk (B:) will fail because +ROM is not writable. # Upgrading -Upgrading to a newer release of RomWBW is essentially just a matter of updating the ROM chip in your system. If you have spare ROM chips for your system and a ROM programmer, it is always safest to keep your existing, working ROM chip and program a new one with the new firmware. If the new one fails to boot, you can easily return to the known working ROM. - -Prior to attempting to reprogram your actual ROM chip, you may wish to "try" the upgrade. With RomWBW, you can upload a new system image and load it from the command line. For each ROM image file (.rom) in the Binary directory, you will also find a corresponding application file (.com). For example, for SBC_std.rom, there is also an SBC_std.com file. You can upload the .com file to your system using XModem, then simply run the .com file. You will see your system go through the normal startup process just like it was started from ROM. However, your ROM has not been updated and the next time you boot your system, it will revert to the system image contained in ROM. - -If you do not have easy access to a ROM programmer, it is entirely possible to reprogram your system ROM using the FLASH utility from Will Sowerbutts. This application called FLASH.COM can be found on the ROM drive of any running system. In this case, you would need to transfer the new ROM image (.rom) over to your system using XModem. The ROM image will be too large to fit on your RAM drive, so you will need to transfer it to a larger storage drive. Once the ROM image is on your system, you can use the FLASH application to update your ROM: - -``` -E>xm r rom.img - -XMODEM v12.5 - 07/13/86 -RBC, 28-Aug-2019 [WBW], ASCI - -Receiving: E0:ROM.IMG -7312k available for uploads -File open - ready to receive -To cancel: Ctrl-X, pause, Ctrl-X - -Thanks for the upload - -E>flash write rom.img -FLASH4 by Will Sowerbutts version 1.2.3 - -Using RomWBW (v2.6+) bank switching. -Flash memory chip ID is 0xBFB7: 39F040 -Flash memory has 128 sectors of 4096 bytes, total 512KB -Write complete: Reprogrammed 2/128 sectors. -Verify (128 sectors) complete: OK! -``` - -Obviously, there is some risk to this approach since any issues with the programming or ROM image could result in a non-functional system. - -To confirm your ROM chip has been successfully updated, restart your system and boot an operating system from ROM. Do not boot from a disk device yet. Review the boot messages to see if any issues have occurred. - -Once you are satisfied that the ROM is working well, you will need to update the system images and RomWBW custom applications on your disk drives. The system images and custom applications are matched to the RomWBW ROM firmware in use. If you attempt to use a disk or applications that have not been updated to match the current ROM firmware, you are likely to have odd problems. - -The simplest way to update your disk media is to just use your modern computer to overwrite the entire media with the latest disk image of your choice. This process is described below in the Disk Images section. If you wish to update existing disk media in your system, you need to perform the following steps. - -If the disk is bootable, you need to update the system tracks of the disk. This is done using a SYSCOPY command such as `SYSCOPY C:=B:ZSYS.SYS`. For a ZSDOS boot disk, use ZSYS.SYS. For a CP/M 2.2 disk, use CPM.SYS. For a CP/M 3 or ZPM3 disk, use CPMLDR.SYS. CPMLDR.SYS is not provided on the ROM disk, so you would need to upload it from the distribution. - -Finally, if you have copies of any of the RomWBW custom applications on your hard disk, you need to update them with the latest copies. The following applications are found on your ROM disk. Use COPY to copy them over any older versions of the app on your disk: - - * ASSIGN.COM - * FORMAT.COM - * OSLDR.COM - * SYSCOPY.COM - * TALK.COM - * FDU.COM (was FDTST.COM) - * XM.COM - * MODE.COM - * RTC.COM - * TIMER.COM - * INTTEST.COM - -For example: `B>COPY ASSIGN.COM C:` +Upgrading to a newer release of RomWBW is essentially just a matter of +updating the ROM chip in your system. If you have spare ROM chips for +your system and a ROM programmer, it is always safest to keep your +existing, working ROM chip and program a new one with the new firmware. +If the new one fails to boot, you can easily return to the known working +ROM. + +Prior to attempting to reprogram your actual ROM chip, you may wish to +“try” the upgrade. With RomWBW, you can upload a new system image and +load it from the command line. For each ROM image file (.rom) in the +Binary directory, you will also find a corresponding application file +(.com). For example, for SBC\_std.rom, there is also an SBC\_std.com +file. You can upload the .com file to your system using XModem, then +simply run the .com file. You will see your system go through the normal +startup process just like it was started from ROM. However, your ROM has +not been updated and the next time you boot your system, it will revert +to the system image contained in ROM. You may find that you are unable +to load the .com file because it is too large to fit in available +application RAM (TPA). Unfortunately, in this case, you will not be able +to use the .com file to start your system. + +If you do not have easy access to a ROM programmer, it is entirely +possible to reprogram your system ROM using the FLASH utility from Will +Sowerbutts. This application called FLASH.COM can be found on the ROM +drive of any running system. In this case, you would need to transfer +the new ROM image (.rom) over to your system using XModem. The ROM image +will be too large to fit on your RAM drive, so you will need to transfer +it to a larger storage drive. Once the ROM image is on your system, you +can use the FLASH application to update your ROM: + + E>xm r rom.img + + XMODEM v12.5 - 07/13/86 + RBC, 28-Aug-2019 [WBW], ASCI + + Receiving: E0:ROM.IMG + 7312k available for uploads + File open - ready to receive + To cancel: Ctrl-X, pause, Ctrl-X + + Thanks for the upload + + E>flash write rom.img + FLASH4 by Will Sowerbutts version 1.2.3 + + Using RomWBW (v2.6+) bank switching. + Flash memory chip ID is 0xBFB7: 39F040 + Flash memory has 128 sectors of 4096 bytes, total 512KB + Write complete: Reprogrammed 2/128 sectors. + Verify (128 sectors) complete: OK! + +Obviously, there is some risk to this approach since any issues with the +programming or ROM image could result in a non-functional system. + +To confirm your ROM chip has been successfully updated, restart your +system and boot an operating system from ROM. Do not boot from a disk +device yet. Review the boot messages to see if any issues have occurred. + +Once you are satisfied that the ROM is working well, you will need to +update the system images and RomWBW custom applications on your disk +drives. The system images and custom applications are matched to the +RomWBW ROM firmware in use. If you attempt to use a disk or applications +that have not been updated to match the current ROM firmware, you are +likely to have odd problems. + +The simplest way to update your disk media is to just use your modern +computer to overwrite the entire media with the latest disk image of +your choice. This process is described below in the Disk Images section. +If you wish to update existing disk media in your system, you need to +perform the following steps. + +If the disk is bootable, you need to update the system tracks of the +disk. This is done using a SYSCOPY command such as `SYSCOPY +C:=B:ZSYS.SYS`. For a ZSDOS boot disk, use ZSYS.SYS. For a CP/M 2.2 +disk, use CPM.SYS. For a CP/M 3 or ZPM3 disk, use CPMLDR.SYS. CPMLDR.SYS +is not provided on the ROM disk, so you would need to upload it from the +distribution. + +Finally, if you have copies of any of the RomWBW custom applications on +your hard disk, you need to update them with the latest copies. The +following applications are found on your ROM disk. Use COPY to copy them +over any older versions of the app on your disk: + + - ASSIGN.COM + - FORMAT.COM + - OSLDR.COM + - SYSCOPY.COM + - TALK.COM + - FDU.COM (was FDTST.COM) + - XM.COM + - MODE.COM + - RTC.COM + - TIMER.COM + - INTTEST.COM + +For example: `B>COPY ASSIGN.COM C:` # Using Disks -While the RAM/ROM disks provide a functional system, they are not useful in the long term because you cannot save data across power cycles. They are also constrained by limited space. - -If your system has working disk devices, then you should notice some drive letters assigned at startup. The specific drive letters assigned will depend on your system configuration. Note that there **must** be media installed in IDE, CF, SD interfaces in order for drive letters to be assigned at boot. - -To use a disk device, you will need to initialize the directory of the filesystem. This is done using the CLRDIR application. For example if your C: drive has been assigned to a storage device, you would use `CLRDIR C:` to initialize C: and prepare it hold files. Note that CLRDIR will prompt you for confirmation and you must respond with a **capital** 'Y' to confirm. Once CLDIR has completed, you can copy files onto the drive, for example `COPY *.* C:`. - -If you are using a floppy drive, you will need to format your floppy disk prior to use. This is only required for floppy disks, not hard disk, CF Cards, or SD Cards, etc. To format a floppy drive, you can use the interactive application FDU. FDU is not terribly user friendly, but is generally documented in the file "FDU.txt" found in the Doc directory of the distribution. +While the RAM/ROM disks provide a functional system, they are not useful +in the long term because you cannot save data across power cycles. They +are also constrained by limited space. + +If your system has working disk devices, then you should notice some +drive letters assigned at startup. The specific drive letters assigned +will depend on your system configuration. Note that there **must** be +media installed in IDE, CF, SD interfaces in order for drive letters to +be assigned at boot. + +To use a disk device, you will need to initialize the directory of the +filesystem. This is done using the CLRDIR application. For example if +your C: drive has been assigned to a storage device, you would use +`CLRDIR C:` to initialize C: and prepare it hold files. Note that CLRDIR +will prompt you for confirmation and you must respond with a **capital** +вЂY’ to confirm. Once CLDIR has completed, you can copy files onto the +drive, for example `COPY *.* C:`. + +If you are using a floppy drive, you will need to format your floppy +disk prior to use. This is only required for floppy disks, not hard +disk, CF Cards, or SD Cards, etc. To format a floppy drive, you can use +the interactive application FDU. FDU is not terribly user friendly, but +is generally documented in the file “FDU.txt” found in the Doc directory +of the distribution. ## Disk Images -As mentioned previously, RomWBW includes a variety of disk images that contain a full set of applications for the operating systems supported. It is generally easier to use these disk images instead of copying all the files over using XModem. You use your modern computer (Windows, Linux, MacOS) to place the disk image onto the disk media, then just move the media over to your system. In this scenario you **do not** run CLRDIR on the directory of the drive letter(s). - -To copy the disk image files onto your actual media (floppy disk, CF Card, SD Card, etc.), you need to use an image writing utility on your modern computer. Your modern computer will need to have an appropriate interface or slot that accepts the media. To actually copy the image, you can use the `dd` command on Linux or MacOS. On Windows, in the "Tools" directory of the distribution there are two tools you can use. For floppy media, you can use RawWriteWin and for hard disk media, you can use Win32DiskImager. In all cases, the image file should be written to the media starting at the very first block or sector of the media. This will destroy any other data on the media. - -The disk image files are found in the Binary directory of the distribution. Floppy disk images are prefixed with "fd_" and hard disk images are prefixed with "hd_". The floppy images are specifically for 1.44M floppy media only. Each disk image has the complete set of normal applications and tools distributed with the associated operating system or application suite. - -The following table shows the disk image files available. Note that the images in the "Hard" column are fine for use on CF Cards, SD Cards, as well as real spinning hard disks. - -| Floppy | Hard | Description | -| --------------- | --------------- | -------------------------------------- | -| fd_cpm22.img | hd_cpm22.img | DRI CP/M 2.2 bootable disk | -| fd_zsdos.img | hd_zsdos.img | ZSDOS 1.1 bootable disk | -| fd_nzcom.img | hd_nzcom.img | NZCOM bootable disk\* | -| fd_cpm3 | hd_cpm3.img | DRI CP/M 3 bootable disk | -| fd_zpm3 | hd_zpm3.img | ZPM3 bootable disk | - -\*NZCOM requires some configuration prior to running it. Refer to the Operating Systems section below for more information. - -Note that unlike the ROM firmware, you do ** not** need to choose a disk image specific to your hardware. Because the RomWBW firmware provides a hardware abstraction layer, all hard disk images will work on all hardware variations. Yes, this means you can remove an SD Card from one system and put it in a different system. The only constraint is that the applications on the disk media must be up to date with the firmware on the system being used. - -All of the disk images that indicate they are bootable will boot from disk as is. You do not need to run `SYSCOPY` on them to make them bootable. However, if you upgrade your ROM, you should use `SYSCOPY` to update the system tracks. +As mentioned previously, RomWBW includes a variety of disk images that +contain a full set of applications for the operating systems supported. +It is generally easier to use these disk images instead of copying all +the files over using XModem. You use your modern computer (Windows, +Linux, MacOS) to place the disk image onto the disk media, then just +move the media over to your system. In this scenario you **do not** run +CLRDIR on the directory of the drive letter(s). + +To copy the disk image files onto your actual media (floppy disk, CF +Card, SD Card, etc.), you need to use an image writing utility on your +modern computer. Your modern computer will need to have an appropriate +interface or slot that accepts the media. To actually copy the image, +you can use the `dd` command on Linux or MacOS. On Windows, in the +“Tools” directory of the distribution there are two tools you can use. +For floppy media, you can use RawWriteWin and for hard disk media, you +can use Win32DiskImager. In all cases, the image file should be written +to the media starting at the very first block or sector of the media. +This will destroy any other data on the media. + +The disk image files are found in the Binary directory of the +distribution. Floppy disk images are prefixed with “fd\_” and hard disk +images are prefixed with “hd\_”. The floppy images are specifically for +1.44M floppy media only. Each disk image has the complete set of normal +applications and tools distributed with the associated operating system +or application suite. + +The following table shows the disk image files available. Note that the +images in the “Hard” column are fine for use on CF Cards, SD Cards, as +well as real spinning hard disks. + +| Floppy | Hard | Description | +| ------------- | ------------- | ---------------------------- | +| fd\_cpm22.img | hd\_cpm22.img | DRI CP/M 2.2 bootable disk | +| fd\_zsdos.img | hd\_zsdos.img | ZSDOS 1.1 bootable disk | +| fd\_nzcom.img | hd\_nzcom.img | NZCOM bootable disk | +| fd\_cpm3 | hd\_cpm3.img | DRI CP/M 3 bootable disk | +| fd\_zpm3 | hd\_zpm3.img | ZPM3 bootable disk | +| fd\_ws4 | hd\_ws4.img | WordStar v4 application disk | + +In addition to the disk images above, there is also a special hard disk +image called hd\_combo.img. This image contains all of the images above, +but in a single image with 6 slices (see below for information on disk +slices). At the boot loader prompt, you can choose a disk with the combo +image, then select the specific slice you want. This allows a single +disk to have all of the possible operating system options. + +This is the layout of the hd\_combo disk image: + +| Slice | Description | +| ------- | ---------------------------- | +| Slice 0 | DRI CP/M 2.2 bootable disk | +| Slice 1 | ZSDOS 1.1 bootable disk | +| Slice 2 | NZCOM bootable disk | +| Slice 3 | DRI CP/M 3 bootable disk | +| Slice 4 | ZPM3 bootable disk | +| Slice 5 | WordStar v4 application disk | + +Note that unlike the ROM firmware, you do **not** need to choose a disk +image specific to your hardware. Because the RomWBW firmware provides a +hardware abstraction layer, all hard disk images will work on all +hardware variations. Yes, this means you can remove an SD Card from one +system and put it in a different system. The only constraint is that the +applications on the disk media must be up to date with the firmware on +the system being used. + +All of the disk images that indicate they are bootable will boot from +disk as is. You do not need to run `SYSCOPY` on them to make them +bootable. However, if you upgrade your ROM, you should use `SYSCOPY` to +update the system tracks. # General Usage -Each of the operating systems and ROM applications included with RomWBW are sophisticated tools in their own right. It is not reasonable to document their usage here. However, you will find complete manuals in PDF format in the Doc directory of the distribution. The intention of this section is to document the RomWBW specific enhancements to these OSes. +Each of the operating systems and ROM applications included with RomWBW +are sophisticated tools in their own right. It is not reasonable to +document their usage here. However, you will find complete manuals in +PDF format in the Doc directory of the distribution. The intention of +this section is to document the RomWBW specific enhancements to these +OSes. ## ROM Disk -The ROM disk contents have been optimized to provide a core set of tools and applications that are helpful for either CP/M 2.2 and ZSDOS. Since ZSDOS is CP/M 2.2 compatible, this works fairly well. However, you will find some files on the ROM disk that will work with ZSDOS, but will not work on CP/M 2.2. For example, `LDDS`, which loads the ZSDOS date/time stamper will only run on ZSDOS. +In addition to the ROM-based operating systems and applications, the ROM +also contains a ROM disk with a small CP/M filesystem. The contents have +been optimized to provide a core set of tools and applications that are +helpful for either CP/M 2.2 and ZSDOS. Since ZSDOS is CP/M 2.2 +compatible, this works fairly well. However, you will find some files on +the ROM disk that will work with ZSDOS, but will not work on CP/M 2.2. +For example, `LDDS`, which loads the ZSDOS date/time stamper will only +run on ZSDOS. ## Drive Letter Assignment -In legacy CP/M-type operating systems, drive letters were generally mapped to disk drives in a completely fixed way. For example, drive A: would **always** refer to the first floppy drive. Since RomWBW supports a wide variety of hardware configurations, it implements a much more flexible drive letter assignment mechanism so that any drive letter can be assigned to any disk device. - -At boot, you will notice that RomWBW automatically assigns drive letters to the available disk devices. These assignments are displayed during the startup of the selected operating system. Additionally, you can review the current drive assignments at any time using the `ASSIGN` command. CP/M 3 and ZPM3 do not automatically display the assignments at startup, but you can use `ASSIGN` do display them. - -The drive letter assignments **do not** change during an OS session unless you use the `ASSIGN` command yourself to do it. Additionally, the assignments at boot will stay the same on each boot as long as you do not make changes to your hardware configuration. Note that the assignments **are** dependent on the media currently inserted in hard disk drives. So, notice that if you insert or remove an SD Card or CF Card, the drive assignments will change. Since drive letter assignments can change, you must be careful when doing destructive things like using `CLRDIR` to make sure the drive letter you use is referring to the desired media. - -When performing a ROM boot of an operating system, note that A: will be your RAM disk and B: will be your ROM disk. When performing a disk boot, the disk you are booting from will be assigned to A: and the rest of the drive letters will be offset to accommodate this. This is done because most legacy operating systems expect that A: will be the boot drive. +In legacy CP/M-type operating systems, drive letters were generally +mapped to disk drives in a completely fixed way. For example, drive A: +would **always** refer to the first floppy drive. Since RomWBW supports +a wide variety of hardware configurations, it implements a much more +flexible drive letter assignment mechanism so that any drive letter can +be assigned to any disk device. + +At boot, you will notice that RomWBW automatically assigns drive letters +to the available disk devices. These assignments are displayed during +the startup of the selected operating system. Additionally, you can +review the current drive assignments at any time using the `ASSIGN` +command. CP/M 3 and ZPM3 do not automatically display the assignments at +startup, but you can use `ASSIGN` do display them. + +The drive letter assignments **do not** change during an OS session +unless you use the `ASSIGN` command yourself to do it. Additionally, the +assignments at boot will stay the same on each boot as long as you do +not make changes to your hardware configuration. Note that the +assignments **are** dependent on the media currently inserted in hard +disk drives. So, notice that if you insert or remove an SD Card or CF +Card, the drive assignments will change. Since drive letter assignments +can change, you must be careful when doing destructive things like using +`CLRDIR` to make sure the drive letter you use is referring to the +desired media. + +When performing a ROM boot of an operating system, note that A: will be +your RAM disk and B: will be your ROM disk. When performing a disk boot, +the disk you are booting from will be assigned to A: and the rest of the +drive letters will be offset to accommodate this. This is done because +most legacy operating systems expect that A: will be the boot drive. ## Slices -The vintage operating systems included with RomWBW were produced at a time when mass storage devices were quite small. CP/M 2.2 could only handle filesystems up to 8MB. In order to achieve compatibility across all of the operating systems supported by RomWBW, the hard disk filesystem format used is 8MB. This ensures any filesystem will be accessible to any of the operating systems. - -Since storage devices today are quite large, RomWBW implements a mechanism called slicing to allow up to 256 8MB filesystems on a single large storage device. This allows up to 2GB of useable space on a single media. You can think of slices as a way to refer to the first 256 8MB chunks of space on a single media. - -Of course, the problem is that CP/M-like operating systems have only 16 drive letters (A:-P:) available. Under the covers, RomWBW allows you to use any drive letter to refer to any slice of any media. The `ASSIGN` command is provided to allow you to view or change the drive letter mappings at any time. At startup, the operating system will automatically allocate a reasonable number of drive letters to the available storage devices. The allocation will depend on the number of large storage devices available at boot. For example, if you have only one hard disk type media, you will see that 8 drive letters are assigned to the first 8 slices of that media. If you have two large storage devices, you will see that each device is allocated four drive letters. - -Referring to slices within a storage device is done by appending a :n where n is the device relative slice number from 0-255. For example, if you have an IDE device, it will show up as IDE0: in the boot message meaning the first IDE device. To refer to the second slice of IDE0, you would type "IDE0:1". So, if I wanted to use drive letter L: to refer to the second slice of IDE0, I could use the command `ASSIGN L:=IDE0:1`. - -There are a couple of rules to be aware of when assigning drive letters. First, you may only refer to a specific device/slice with one drive letter. Said another way, you cannot have multiple drive letters referring to a single device/slice at the same time. Second, there must always be a drive assigned to A:. Any attempt to violate these rules will be blocked by the `ASSIGN` command. - -Unlike MS-DOS partitions, slices are not allocated -- there is no partitioning of slices. Think of every hard disk type device as having a pre-allocated set of 256 8MB slices at the start of the media. You can refer to any of them simply by assigning a drive letter. RomWBW will not check to see if there is anything else on the hard disk in the slice you are referring to, nor will it verify that the hard disk media is large enough to have a slice at the location you refer to. If you attempt to write past the end of your media, you will get an I/O error displayed, so you will know if you make a mistake. There is no tracking of your use of slices -- you will need to keep track of your use of slices yourself. - -Nothing automatically initializes a slice as a file system. You must do that yourself using `CLRDIR`. Since CLRDIR works on drive letters, make absolutely sure you know what media and slice are assigned to that drive letter before using `CLRDIR`. - -While it probably obvious, you cannot use slices on any media less than 8MB in size. Specifically, you cannot slice RAM disk, ROM disk, floppy disks, etc. - -# RomWBW Applications - -A typical set of CP/M-80 2.2 and Z-System applications are included on the ROM file system. The Doc directory of the distribution contains the CP/M, ZSDOS, and ZCPR user manuals which provide the primary usage information. Note that the Z-System applications will generally not run under CP/M. - -The following custom applications are included on the ROM disk to enhance the operation of RomWBW: - -| Application | Description | -| ----------- | -------------------------------------------------------------- | -| ASSIGN | Add, change, and delete drive letter assignments. Use ASSIGN /? for usage instructions. | -| SYSCOPY | Copy system image to a device to make it bootable. Use SYSCOPY with no parms for usage instructions. | -| FDU | Format and test floppy disks. Menu driven interface. | +The vintage operating systems included with RomWBW were produced at a +time when mass storage devices were quite small. CP/M 2.2 could only +handle filesystems up to 8MB. In order to achieve compatibility across +all of the operating systems supported by RomWBW, the hard disk +filesystem format used is 8MB. This ensures any filesystem will be +accessible to any of the operating systems. + +Since storage devices today are quite large, RomWBW implements a +mechanism called slicing to allow up to 256 8MB filesystems on a single +large storage device. This allows up to 2GB of useable space on a single +media. You can think of slices as a way to refer to the first 256 8MB +chunks of space on a single media. + +Of course, the problem is that CP/M-like operating systems have only 16 +drive letters (A:-P:) available. Under the covers, RomWBW allows you to +use any drive letter to refer to any slice of any media. The `ASSIGN` +command is provided to allow you to view or change the drive letter +mappings at any time. At startup, the operating system will +automatically allocate a reasonable number of drive letters to the +available storage devices. The allocation will depend on the number of +large storage devices available at boot. For example, if you have only +one hard disk type media, you will see that 8 drive letters are assigned +to the first 8 slices of that media. If you have two large storage +devices, you will see that each device is allocated four drive letters. + +Referring to slices within a storage device is done by appending a :n +where n is the device relative slice number from 0-255. For example, if +you have an IDE device, it will show up as IDE0: in the boot message +meaning the first IDE device. To refer to the second slice of IDE0, you +would type “IDE0:1”. So, if I wanted to use drive letter L: to refer to +the second slice of IDE0, I could use the command `ASSIGN L:=IDE0:1`. + +There are a couple of rules to be aware of when assigning drive letters. +First, you may only refer to a specific device/slice with one drive +letter. Said another way, you cannot have multiple drive letters +referring to a single device/slice at the same time. Second, there must +always be a drive assigned to A:. Any attempt to violate these rules +will be blocked by the `ASSIGN` command. + +Unlike MS-DOS partitions, slices are not allocated – there is no +partitioning of slices. Think of every hard disk type device as having a +pre-allocated set of 256 8MB slices at the start of the media. You can +refer to any of them simply by assigning a drive letter. RomWBW will not +check to see if there is anything else on the hard disk in the slice you +are referring to, nor will it verify that the hard disk media is large +enough to have a slice at the location you refer to. If you attempt to +write past the end of your media, you will get an I/O error displayed, +so you will know if you make a mistake. There is no tracking of your use +of slices – you will need to keep track of your use of slices yourself. + +Nothing automatically initializes a slice as a file system. You must do +that yourself using `CLRDIR`. Since CLRDIR works on drive letters, make +absolutely sure you know what media and slice are assigned to that drive +letter before using `CLRDIR`. + +While it probably obvious, you cannot use slices on any media less than +8MB in size. Specifically, you cannot slice RAM disk, ROM disk, floppy +disks, etc. + +# Inbuilt ROM Applications + +In addition to CP/M 2.2 and Z-System, there are several additional ROM +applications that can be launched directly from ROM. These applications +are not hosted by an operating system and so they are unable to save +files to disk devices. + +The following options are available at the boot loader prompt: + +| Application | | +| ----------- | ------------------------------------------------------ | +| Monitor | Z80 system debug monitor w/ Intel Hex loader | +| Forth | Brad Rodriguez’s ANSI compatible Forth language | +| Basic | Nascom 8K BASIC language | +| Tasty BASIC | Dimitri Theuling’s Tiny BASIC implementation | +| Play | A simple video game (requires ANSI terminal emulation) | + +In general, the command to exit these applications and restart the +system is `BYE`. The exceptions are the Monitor which uses `B` and Play +which uses `Q`. + +Space is available in the ROM image for the inclusion of other software. +Any inbuilt application can be set up to launch automatically at +startup. + +# RomWBW Custom Applications + +The operation of the RomWBW hosted operating systems is enhanced through +several custom applications. These applications are functional on all of +the OS variants included with RomWBW. + +The following custom applications are found on the RomWBW ROM disk and +are, therefore, globally available. + +| Application | Description | +| ----------- | ------------------------------------------------------------------------------------------------------------------------------------ | +| ASSIGN | Add, change, and delete drive letter assignments. Use ASSIGN /? for usage instructions. | +| SYSCOPY | Copy system image to a device to make it bootable. Use SYSCOPY with no parms for usage instructions. | +| FDU | Format and test floppy disks. Menu driven interface. | | OSLDR | Load a new OS on the fly. For example, you can switch to Z-System when running CP/M. Use OSLDR with no parms for usage instructions. | -| FORMAT | Will someday be a command line tool to format floppy disks. Currently does nothing! | -| MODE | Reconfigures serial ports dynamically. | -| XM | XModem file transfer program adapted to hardware. Automatically uses primary serial port on system. | -| FDISK80 | John Coffman's Z80 hard disk partitioning tool. See documentation in Doc directory. | +| FORMAT | Will someday be a command line tool to format floppy disks. Currently does nothing\! | +| MODE | Reconfigures serial ports dynamically. | +| XM | XModem file transfer program adapted to hardware. Automatically uses primary serial port on system. | +| FDISK80 | John Coffman’s Z80 hard disk partitioning tool. See documentation in Doc directory. | +| FAT | Access MS-DOS FAT filesystems from RomWBW (based on FatFs). | +| FLASH | Will Sowerbutts’ in-situ ROM programming utility. | +| CLRDIR | Format the directory areas of a CP/M disk. | + +Some custom applications do not fit on the ROM disk. They are found on +the disk image files or the individual files can be found in the +Binary\\Apps directory of the distribution. + +| Application | Description | +| ----------- | ----------------------------------------------------------- | +| TUNE | Play .PT2, .PT3, .MYM audio files. | | FAT | Access MS-DOS FAT filesystems from RomWBW (based on FatFs). | -| FLASH | Will Sowerbutts' in-situ ROM programming utility. | -| CLRDIR | Format the directory areas of a CP/M disk. | - -Some custom applications do not fit on the ROM disk. They are found on the disk image files or the individual files can be found in the Binary\\Apps directory of the distribution. - -| Application | Description | -| ----------- | -------------------------------------------------------------- | -| TUNE | Play .PT2, .PT3, .MYM audio files. | -| FAT | Access MS-DOS FAT filesystems from RomWBW (based on FatFs). | -There is additional documentation on some of these applications at the [RomWBW Applications Page](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:apps). +There is additional documentation on some of these applications at the +[RomWBW Applications +Page](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:apps). -# Operating System Options +# Operating Systems -One of the primary goals of RomWBW is to expose a set of generic hardware functions that make it easy to adapt operating systems to any hardware supported by RomWBW. As a result, there are now 5 operating systems that have been adapted to run under RomWBW. The adaptations are identical for all hardware supported by RomWBW because RomWBW hides all hardware specifics from the operating system. +One of the primary goals of RomWBW is to expose a set of generic +hardware functions that make it easy to adapt operating systems to any +hardware supported by RomWBW. As a result, there are now 5 operating +systems that have been adapted to run under RomWBW. The adaptations are +identical for all hardware supported by RomWBW because RomWBW hides all +hardware specifics from the operating system. -Note that all of the operating systems included with RomWBW support the same basic filesystem format. As as result, a formatted filesystem will be accessible to any operating system. The only possible issue is that if you turn of date/time stamping using the newer OSes, the older OSes will not understand this. Files will not be corrupted, but the date/time stamps may be lost. +Note that all of the operating systems included with RomWBW support the +same basic filesystem format. As as result, a formatted filesystem will +be accessible to any operating system. The only possible issue is that +if you turn of date/time stamping using the newer OSes, the older OSes +will not understand this. Files will not be corrupted, but the date/time +stamps may be lost. -The following sections briefly describe the operating system options currently available. +The following sections briefly describe the operating system options +currently available. ## Digital Research CP/M 2.2 -This is the most widely used variant of the Digital Research operating system. It has the most basic feature set, but is essentially the compatibility metric for all other CP/M-like operating systems including all of those listed below. The Doc directory contains a manual for CP/M usage ("CPM Manual.pdf"). If you are new to the CP/M world, I would recommend using this CP/M variant to start with simply because it is the most stable and you are less likely to encounter problems. +This is the most widely used variant of the Digital Research operating +system. It has the most basic feature set, but is essentially the +compatibility metric for all other CP/M-like operating systems including +all of those listed below. The Doc directory contains a manual for CP/M +usage (“CPM Manual.pdf”). If you are new to the CP/M world, I would +recommend using this CP/M variant to start with simply because it is the +most stable and you are less likely to encounter problems. ## ZSDOS 1.1 -ZSDOS is the most popular non-DRI CP/M "clone" which is generally referred to as Z-System. Z-System is intended to be an enhanced version of CP/M and should run all CP/M 2.2 applications. It is optimized for the Z80 CPU (as opposed to 8080 for CP/M) and has some significant improvements such as date/time stamping of files. For further information on the RomWBW implementation of Z-System, see the wiki page [Z-System Notes](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:zsystem). Additionally, the official documentation for Z-System is included in the RomWBW distribution Doc directory ("ZSDOS Manual.pdf" and "ZCPR Manual.pdf"). +ZSDOS is the most popular non-DRI CP/M “clone” which is generally +referred to as Z-System. Z-System is intended to be an enhanced version +of CP/M and should run all CP/M 2.2 applications. It is optimized for +the Z80 CPU (as opposed to 8080 for CP/M) and has some significant +improvements such as date/time stamping of files. For further +information on the RomWBW implementation of Z-System, see the wiki page +[Z-System +Notes](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:zsystem). +Additionally, the official documentation for Z-System is included in the +RomWBW distribution Doc directory (“ZSDOS Manual.pdf” and “ZCPR +Manual.pdf”). ## NZCOM Automatic Z-System -NZCOM is a much further refined version of Z-System (ZCPR 3.4). NZCOM was sold as an enhancement for existing users of CP/M 2.2 or ZSDOS. For this reason, (by design) NZCOM does not provide a way to boot directly from disk. Rather, it is loaded after the system boots into a host OS. On the RomWBW NZCOM disk images, the boot OS is ZSDOS 1.1. +NZCOM is a much further refined version of Z-System (ZCPR 3.4). NZCOM +was sold as an enhancement for existing users of CP/M 2.2 or ZSDOS. For +this reason, (by design) NZCOM does not provide a way to boot directly +from disk. Rather, it is loaded after the system boots into a host OS. +On the RomWBW NZCOM disk images, the boot OS is ZSDOS 1.1. -To use, NZCOM, you must run through a simple configuration process. This is well documented in the NZCOM manual in the "NZCOM Users Manual.pdf" file in the RomWBW Doc directory. Additionally, there are instructions for automatically launching NZCOM when the disk is booted under the host OS via an auto command submission process. +To use, NZCOM, you must run through a simple configuration process. This +is well documented in the NZCOM manual in the “NZCOM Users Manual.pdf” +file in the RomWBW Doc directory. Additionally, there are instructions +for automatically launching NZCOM when the disk is booted under the host +OS via an auto command submission process. ## Digital Research CP/M 3 -This is the Digital Research follow-up product to their very popular CP/M 2.2 operating system. While highly compatible with CP/M 2.2, it features many enhancements. It makes better use of banked memory to increase the user program space (TPA). It also has a new suite of support tools and help system. +This is the Digital Research follow-up product to their very popular +CP/M 2.2 operating system. While highly compatible with CP/M 2.2, it +features many enhancements. It makes better use of banked memory to +increase the user program space (TPA). It also has a new suite of +support tools and help system. -Note that to make a CP/M 3 boot disk, you actually place CPMLDR.SYS on the system tracks of the disk. You do not place CPM3.SYS on the system tracks. +Note that to make a CP/M 3 boot disk, you actually place CPMLDR.SYS on +the system tracks of the disk. You do not place CPM3.SYS on the system +tracks. -## Simeon Cran's ZPM3 +## Simeon Cran’s ZPM3 -ZPM3 is an interesting combination of the features of both CP/M 3 and ZCPR 3. Essentially, it has the features of and compatibility with both. +ZPM3 is an interesting combination of the features of both CP/M 3 and +ZCPR 3. Essentially, it has the features of and compatibility with both. -Like CP/M 3, to make ZPM3 boot disk, you put CPM3.SYS on the system tracks of the disk. +Like CP/M 3, to make ZPM3 boot disk, you put CPM3.SYS on the system +tracks of the disk. ## FreeRTOS -Note that Phillip Stevens has also ported FreeRTOS to run under RomWBW. FreeRTOS is not provided in the RomWBW distribution, but is available from Phillip. +Note that Phillip Stevens has also ported FreeRTOS to run under RomWBW. +FreeRTOS is not provided in the RomWBW distribution, but is available +from Phillip. # ROM Customization -The pre-built ROM images are configured for the basic capabilities of each platform. Additionally, some of the typical add-on hardware for each platform will be automatically detected and used. If you want to go beyond this, RomWBW provides a very flexible configuration mechanism based on configuration files. Creating a customized ROM requires running a build script, but it is quite easy to do. +The pre-built ROM images are configured for the basic capabilities of +each platform. Additionally, some of the typical add-on hardware for +each platform will be automatically detected and used. If you want to go +beyond this, RomWBW provides a very flexible configuration mechanism +based on configuration files. Creating a customized ROM requires running +a build script, but it is quite easy to do. -Essentially, the creation of a custom ROM is accomplished by updating a small configuration file, then running a script to compile the software and generate the custom ROM image. There are build scripts for Windows, Linux, and MacOS to accommodate virtually all users. All required build tools (compilers, assemblers, etc.) are included in the distribution, so it is not necessary to setup a build environment on your computer. +Essentially, the creation of a custom ROM is accomplished by updating a +small configuration file, then running a script to compile the software +and generate the custom ROM image. There are build scripts for Windows, +Linux, and MacOS to accommodate virtually all users. All required build +tools (compilers, assemblers, etc.) are included in the distribution, so +it is not necessary to setup a build environment on your computer. -The process for building a custom ROM is documented in the ReadMe.txt file in the Source directory of the distribution. +The process for building a custom ROM is documented in the ReadMe.txt +file in the Source directory of the distribution. -For those who are interested in more than basic system customization, note that all source code is provided (including the operating systems). Modification of the source code is considered an expert level task and is left to the reader to pursue. +For those who are interested in more than basic system customization, +note that all source code is provided (including the operating systems). +Modification of the source code is considered an expert level task and +is left to the reader to pursue. -Note that the ROM customization process does not apply to UNA. All UNA customization is performed within the ROM setup script. +Note that the ROM customization process does not apply to UNA. All UNA +customization is performed within the ROM setup script. # UNA Hardware BIOS -John Coffman has produced a new generation of hardware BIOS called UNA. The standard RomWBW distribution includes it's own hardware BIOS. However, RomWBW can alternatively be constructed with UNA as the hardware BIOS portion of the ROM. If you wish to use the UNA variant of RomWBW, then just program your ROM with the ROM image called "UNA_std.rom" in the Binary directory. This one image is suitable on **all** of the platforms and hardware UNA supports. - -UNA is customized dynamically using a ROM based setup routine and the setup is persisted in the system NVRAM of the RTC chip. This means that the single UNA-based ROM image can be used on most of the RetroBrew platforms and is easily customized. UNA also supports FAT file system access that can be used for in-situ ROM programming and loading system images. - -While John is likely to enhance UNA over time, there are currently a few things that UNA does not support: - - * Floppy Drives - * Terminal Emulation - * Zeta 1, N8, RC2014, Easy Z80, and Dyno Systems - * Some older support boards - -The UNA version embedded in RomWBW is the latest production release of UNA. RomWBW will be updated with John's upcoming UNA release with support for VGA3 as soon as it reaches production status. - -Please refer to the [UNA BIOS Firmware Page](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:una:start) for more information on UNA. +John Coffman has produced a new generation of hardware BIOS called UNA. +The standard RomWBW distribution includes it’s own hardware BIOS. +However, RomWBW can alternatively be constructed with UNA as the +hardware BIOS portion of the ROM. If you wish to use the UNA variant of +RomWBW, then just program your ROM with the ROM image called +“UNA\_std.rom” in the Binary directory. This one image is suitable on +**all** of the platforms and hardware UNA supports. + +UNA is customized dynamically using a ROM based setup routine and the +setup is persisted in the system NVRAM of the RTC chip. This means that +the single UNA-based ROM image can be used on most of the RetroBrew +platforms and is easily customized. UNA also supports FAT file system +access that can be used for in-situ ROM programming and loading system +images. + +While John is likely to enhance UNA over time, there are currently a few +things that UNA does not support: + + - Floppy Drives + - Terminal Emulation + - Zeta 1, N8, RC2014, Easy Z80, and Dyno Systems + - Some older support boards + +The UNA version embedded in RomWBW is the latest production release of +UNA. RomWBW will be updated with John’s upcoming UNA release with +support for VGA3 as soon as it reaches production status. + +Please refer to the [UNA BIOS Firmware +Page](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:una:start) +for more information on UNA. # RomWBW Distribution ## Distribution Directory Layout -The RomWBW distribution is a compressed zip archive file organized in a set of directories. Each of these directories has it's own ReadMe.txt file describing the contents in detail. In summary, these directories are: +The RomWBW distribution is a compressed zip archive file organized in a +set of directories. Each of these directories has it’s own ReadMe.txt +file describing the contents in detail. In summary, these directories +are: -| Application | Description | -| ----------- | -------------------------------------------------------------- | -| Binary | The final output files of the build process are placed here. Most importantly, are the ROM images with the file names ending in ".rom". | -| Doc | Contains various detailed documentation including the operating systems, RomWBW architecture, etc. | -| Source | Contains the source code files used to build the software and ROM images. | -| Tools | Contains the MS Windows programs that are used by the build process or that may be useful in setting up your system. | +| Application | Description | +| ----------- | --------------------------------------------------------------------------------------------------------------------------------------- | +| Binary | The final output files of the build process are placed here. Most importantly, are the ROM images with the file names ending in “.rom”. | +| Doc | Contains various detailed documentation including the operating systems, RomWBW architecture, etc. | +| Source | Contains the source code files used to build the software and ROM images. | +| Tools | Contains the MS Windows programs that are used by the build process or that may be useful in setting up your system. | ## Source Code Respository -All source code and distributions are maintained on GitHub. Code contributions are very welcome. +All source code and distributions are maintained on GitHub. Code +contributions are very welcome. -[RomWBW GitHub Repository](https://github.com/wwarthen/RomWBW|https://github.com/wwarthen/RomWBW) +[RomWBW GitHub +Repository](https://github.com/wwarthen/RomWBW%7Chttps://github.com/wwarthen/RomWBW) # Acknowledgements -While I have heavily modified much of the code, I want to acknowledge that much of the work is derived from the work of others in the RetroBrew Computers Community including Andrew Lynch, Dan Werner, Max Scane, David Giles, John Coffman, and probably many others I am not clearly aware of (let me know if I omitted someone!). - -I especially want to credit Douglas Goodall for contributing code, time, testing, and advice. He created an entire suite of application programs to enhance the use of RomWBW. However, he is looking for someone to continue the maintenance of these applications and they have become unusable due to changes within RomWBW. As of RomWBW 2.6, these applications are no longer provided. - - * David Giles contributed support for the CSIO support in the SD Card driver. - * Ed Brindley contributed some of the code that supports the RC2014 platform. - * Phil Summers contributed Forth and BASIC in ROM as well as a long list of general code enhancements. - * Curt Mayer contributed the Linux / MacOS build process. - * UNA BIOS is a product of John Coffman. +While I have heavily modified much of the code, I want to acknowledge +that much of the work is derived from the work of others in the +RetroBrew Computers Community including Andrew Lynch, Dan Werner, Max +Scane, David Giles, John Coffman, and probably many others I am not +clearly aware of (let me know if I omitted someone\!). + +I especially want to credit Douglas Goodall for contributing code, time, +testing, and advice. He created an entire suite of application programs +to enhance the use of RomWBW. However, he is looking for someone to +continue the maintenance of these applications and they have become +unusable due to changes within RomWBW. As of RomWBW 2.6, these +applications are no longer provided. + + - David Giles contributed support for the CSIO support in the SD Card + driver. + - Ed Brindley contributed some of the code that supports the RC2014 + platform. + - Phil Summers contributed Forth and BASIC in ROM as well as a long + list of general code enhancements. + - Curt Mayer contributed the Linux / MacOS build process. + - UNA BIOS is a product of John Coffman. Contributions of all kinds to RomWBW are very welcome. # Getting Assistance -The best way to get assistance with RomWBW or any aspect of the RetroBrew Computers projects is via the community forums: +The best way to get assistance with RomWBW or any aspect of the +RetroBrew Computers projects is via the community forums: - * [RetroBrew Computers Forum](https://www.retrobrewcomputers.org/forum/) - * [RC2014 Google Group](https://groups.google.com/forum/#!forum/rc2014-z80) - * [retro-comp Google Group](https://groups.google.com/forum/#!forum/retro-comp) + - [RetroBrew Computers + Forum](https://www.retrobrewcomputers.org/forum/) + - [RC2014 Google + Group](https://groups.google.com/forum/#!forum/rc2014-z80) + - [retro-comp Google + Group](https://groups.google.com/forum/#!forum/retro-comp) -Submission of issues and bugs are welcome at the [RomWBW GitHub Repository](https://github.com/wwarthen/RomWBW). +Submission of issues and bugs are welcome at the [RomWBW GitHub +Repository](https://github.com/wwarthen/RomWBW). -Also feel free to email Wayne Warthen at [wwarthen@gmail.com](mailto:wwarthen@gmail.com). +Also feel free to email Wayne Warthen at . diff --git a/ReadMe.txt b/ReadMe.txt index 4675bfcb..36c7ce95 100644 --- a/ReadMe.txt +++ b/ReadMe.txt @@ -6,314 +6,784 @@ *** *** *********************************************************************** -Wayne Warthen (wwarthen@gmail.com) -Version 2.9.2-pre.37, 2020-03-15 -https://www.retrobrewcomputers.org/ - -RomWBW is a ROM-based implementation of CP/M-80 2.2 and Z-System for -all RetroBrew Computers Z80/Z180 hardware platforms including SBC -1/2, Zeta 1/2, N8, Mark IV, RC2014, SC, Easy Z80, and Dyno. -Virtually all RetroBrew hardware is supported including floppy, hard -disk (IDE, CF Card, SD Card), Video, and keyboard. VT-100 terminal -emulation is built-in. - -The RomWBW ROM loads and runs the built-in operating systems directly -from the ROM and includes a selection of standard/useful applications -accessed via a ROM disk drive. A RAM disk drive is also provided -to allow temporary file storage. - -Pre-built ROM images are included for all platforms. Detailed system -customization is achieved by making simple modifications to a -configuration file and running a build script to generate a custom -ROM image. All source and build tools are included in the -distribution. Build scripts are provided for most modern computers -including Windows (32 or 64 bit compatible), Linux, or Mac. - -John Coffman's UNA hardware BIOS is fully supported by RomWBW. In the -case of UNA, a single ROM image (pre-built) is used for all supported -platforms and is customized using a ROM-based setup program. See the -UNA section below for more information. - -Quick Start ------------ - -A pre-built ROM image is included for each of the hardware platforms -supported. These ROM images are found in the Binary directory of the -distribution and have a file extension of ".rom". Simply program the -ROM of your system with the appropriate ROM image. Please see the -RomList.txt file in the Binary directory for details on selecting the -correct ROM image for your system and platform specific information. - -================================================================= -=== It is critical that you pick the right ROM image for your === -=== system. Please be sure to review the RomList.txt file to === -=== ensure you pick the right one. === -================================================================= - -Connect a serial terminal or computer with terminal emulation -software to the primary RS-232 port of your CPU board. A null-modem -connection is generally required. Set the line characteristics to -38400 baud, 8 data bits, 1 stop bit, no parity, and no flow control. -Select VT-100 terminal emulation. For RC2014 platforms (including -Stephen Cousins' kits) the baud rate is 115,200. - -Upon power-up, your terminal should display a sign-on banner within 2 -seconds followed by hardware inventory and discovery information. -When hardware initialization is completed, a boot loader prompt -allows you to choose a ROM-based operating system, system monitor, or +RomWBW + +Z80/Z180 System Software + +Version 2.9.2 of March 17, 2020 + +Wayne Warthen wwarthen@gmail.com + +Download + +- RomWBW Distribution Package + +Related Pages + +- RomWBW Architecture Document +- RomWBW Applications +- RomWBW Errata + +Overview + +RomWBW provides a complete software system for a wide variety of +hobbyist Z80/Z180 CPU-based systems produced by these developer +communities: + +- Retrobrew Computers +- RC2014 +- retro-comp + +General features include: + +- Banked memory services for several banking designs +- Disk drivers for RAM, ROM, Floppy, IDE, CF, and SD +- Serial drivers including UART (16550-like), ASCI, ACIA, SIO +- Video drivers including TMS9918, SY6545, MOS8563, HD6445 +- Real time clock drivers including DS1322, BQ4845 +- Multiple OS support including CP/M 2.2, ZSDOS, CP/M 3, ZPM3 +- Built-in VT-100 terminal emulation support + +RomWBW is distributed as both source code and pre-built ROM and disk +images. Some of the provided software can be launched directly from the +ROM firmware itself: + +- System monitor +- Operating systems (CP/M 2.2, ZSDOS) +- ROM BASIC (Nascom BASIC and Tasty BASIC) +- ROM Forth + +A dynamic disk drive letter assignment mechanism allows mapping +operating system drive letters to any available disk media. +Additionally, mass media devices (IDE Disk, CF Card, SD Card) support +the use of multiple slices (up to 256 per device). Each slice contains a +complete CP/M filesystem and can be mapped independently to any drive +letter. This overcomes the inherent size limitations in legacy OSes +providing up to 2GB of accessible storage on a single device. + +The pre-built ROM firmware images are generally optimal for most users. +However, it is also very easy to modify and build custom ROM images that +fully tailor the firmware to your specific preferences. All tools +required to build custom ROM firmware are included – no need to install +assemblers, etc. Any modern computer running Windows, Linux, or MacOS +can be used. + +Multiple disk images are provided in the distribution. Most disk images +contain a complete, bootable, ready-to-run implementation of a specific +operating system. A “combo” disk image contains multiple slices, each +with a full operating system implementation. If you use this disk image, +you can easily pick whichever operating system you want to boot without +changing media. + +Installation + +The latest RomWBW distribution downloads are maintained on GitHub in the +RomWBW Repository. The fully-built distributions are found on the +releases page of the repository. On this page, you will probably see +both pre-releases as well as normal releases. Unless you have a specific +reason, I suggest you stick to the most recent normal (not pre-release) +release. Expand the “Assets” drop-down for the release you want to +download, then select the asset named RomWBW-vX.X.X-Package.zip. The +Package asset includes all pre-built ROM and Disk images as well as full +source code. The other assets called Source Code do not have the +pre-built ROM or Disk Images. + +The pre-built ROM images will automatically detect and support a +reasonable range of devices including serial ports, video adapters, +on-board disk interfaces, and PropIO/ParPortProp boards without building +a custom ROM. The distribution is a .zip archive. After downloading it +to a working directory on your modern computer (Windows/Linux/Mac) use +any zip tool to extract the contents of the archive. + +In general, you will just program your system’s ROM chip with the +appropriate ROM image from the RomWBW distribution. Depending on how you +got your system, you may have already been provided with a +pre-programmed ROM chip. If so, use that initially. Otherwise, you will +need to use a ROM programmer to initially program your ROM chip. Please +refer to the documentation that came with your ROM programmer for more +information. Once you have a running RomWBW system, you can generally +update your ROM to a newer version in-situ with an included ROM Flashing +tool (Will Sowerbutts’ FLASH application) as described in the Upgrading +section below. + +Looking at the extracted distribution archive, You will see that the +distribution is broken up into a few sub-directories. The Binary +directory contains the pre-built ROM and disk images. The ROM image +files all end in “.rom”. Based on the table below, carefully pick the +appropriate ROM image: + + -------------------------------------------------------------------------- + Platform ROM Image File Baud Description + ---------- ---------------- -------- ------------------------------------- + SBC V1/V2 SBC_std.rom 38400 RetroBrew SBC v1 or v2 ECB Z80 + + Zeta V1 ZETA_std.rom 38400 RetroBrew Zeta V1 Z80, ParPortProp + (optional) + + Zeta V2 ZETA2_std.rom 38400 RetroBrew Zeta V2 Z80, ParPortProp + (optional) + + N8 N8_std.rom 38400 RetroBrew N8 Z180, date code >= 2312 + + Mark IV MK4_std.rom 38400 RetroBrew Mark IV ECB Z180 + + RC2014 Z80 RCZ80_std.rom 115200 RC2014 w/ Z80 CPU, requires 512K + RAM/ROM module + + RC2014 RCZ180_ext.rom 115200 RC2014 w/ Z180 CPU & 512K banked + Z180* RAM/ROM module + + RC2014 RCZ180_nat.rom 115200 RC2014 w/ Z180 CPU & 512K native + Z180* RAM/ROM module + + Easy Z80 EZZ80_std.rom 115200 Sergey Kiselev’s Easy Z80 + + SC126 SCZ180_126.rom 115200 Stephen Cousin’s SC126 Z180 + + SC130 SCZ180_130.rom 115200 Stephen Cousin’s SC130 Z180 + + SC131 SCZ180_131.rom 115200 Stephen Cousin’s SC131 Z180 + + Dyno DYNO_std.rom 38400 Steve Garcia’s Z180 Dyno Computer + -------------------------------------------------------------------------- + +*The RC2014 Z180 requires a separate RAM/ROM memory module. There are +two types of these modules and you must pick the ROM for your type of +memory module. The “ext” ROM supports Spencer’s official 512K RAM/ROM +banked memory module. The “nat” ROM supports any of the thrid-party Z180 +native memory modules. + +RomWBW will automatically attempt to detect and support typical add-on +components for each of the systems supported. More information on the +required system configuration and optional supported components for each +ROM is found in the file called “RomList.txt” in the Binary directory. +All pre-built ROM images are simple 512KB binary images. If your system +utilizes a 1MB ROM, you can just program the image into the first 512KB +of the ROM. + +Connect a serial terminal or computer with terminal emulation software +to the primary serial port of your CPU board. You may need to refer to +your hardware provider’s documentation for details. A null-modem +connection may be required. Set the baud rate as indicated in the table +above. Set the line characteristics to 8 data bits, 1 stop bit, no +parity, and no flow control. If possible, select VT-100 terminal +emulation. + +Upon power-up, your terminal should display a sign-on banner within 2 +seconds followed by hardware inventory and discovery information. When +hardware initialization is completed, a boot loader prompt allows you to +choose a ROM-based operating system, system monitor, application, or boot from a disk device. -CPU Speed ---------- - -RomWBW ROM images support virtually any CPU speed your system is -running. However, there are some hardware-oriented caveats to be -aware of. - -The use of high density floppy disks requires a CPU speed of 8 MHz or -greater. - -Upgrading from Previous Versions --------------------------------- - -Program a new ROM chip from an image in the new distribution. Install -the new ROM chip and boot your system. At the boot loader "Boot:" -prompt, select either CP/M or Z-System to load the OS from ROM. - -If you have spare rom chips for your system, it is always safest to -keep your existing, working ROM chip and program a new one so that you -can return to the old one if the new one does not work properly. - -If you use a customized ROM image, it is recommended that you first -try the pre-built ROM image first and then move on to generating a -custom image. - -It is entirely possible to reprogram your system ROM using the FLASH -utility from Will Sowerbutts on your ROM drive (B:). In this case, -you would need to transfer the new ROM image to your system using -X-Modem. Obviously, there is some risk to this approach since any -issues with the programming or ROM image could result in a -non-functional system. - -If your system has any bootable drives, then update the OS image on -each drive using SYSCOPY. For example, if C: is a bootable drive -with the Z-System OS, you would update the OS image on this drive -with the command: - - B>SYSCOPY C:=B:ZSYS.SYS - -If you have copies of any of the system utilities on drives other -than the ROM disk drive, you need to copy the latest version of the -programs from the ROM drive (B:) to any drives containing these -programs. For example, if you have a copy of the ASSIGN.COM program -on C:, you would update it from the new ROM using the COPY command: - - B>COPY B:ASSIGN.COM C: - -The following programs are maintained with the ROM images and all -copies of these programs should be updated when upgrading to a new -ROM version: - - - ASSIGN.COM - - FORMAT.COM - - OSLDR.COM - - SYSCOPY.COM - - TALK.COM - - FDU.COM - - XM.COM - - RTC.COM - - FAT.COM - - TIMER.COM - - INTTEST.COM +Initially, you should try the ROM boot options. By selecting either CP/M +2.2 or Z-System, the operating system will be loaded from ROM and you +will see the a B> disk prompt. In this scenario, A: will be an empty RAM +disk and B: will refer to your ROM disk containing some typical +applications. This provides a simple environment for learning to use +your system. Be aware that files saved to the RAM disk (A:) will +disappear at the next power on (RAM is generally not persistent). Also +note that attempts to save files to the ROM disk (B:) will fail because +ROM is not writable. + +Upgrading + +Upgrading to a newer release of RomWBW is essentially just a matter of +updating the ROM chip in your system. If you have spare ROM chips for +your system and a ROM programmer, it is always safest to keep your +existing, working ROM chip and program a new one with the new firmware. +If the new one fails to boot, you can easily return to the known working +ROM. + +Prior to attempting to reprogram your actual ROM chip, you may wish to +“try” the upgrade. With RomWBW, you can upload a new system image and +load it from the command line. For each ROM image file (.rom) in the +Binary directory, you will also find a corresponding application file +(.com). For example, for SBC_std.rom, there is also an SBC_std.com file. +You can upload the .com file to your system using XModem, then simply +run the .com file. You will see your system go through the normal +startup process just like it was started from ROM. However, your ROM has +not been updated and the next time you boot your system, it will revert +to the system image contained in ROM. You may find that you are unable +to load the .com file because it is too large to fit in available +application RAM (TPA). Unfortunately, in this case, you will not be able +to use the .com file to start your system. + +If you do not have easy access to a ROM programmer, it is entirely +possible to reprogram your system ROM using the FLASH utility from Will +Sowerbutts. This application called FLASH.COM can be found on the ROM +drive of any running system. In this case, you would need to transfer +the new ROM image (.rom) over to your system using XModem. The ROM image +will be too large to fit on your RAM drive, so you will need to transfer +it to a larger storage drive. Once the ROM image is on your system, you +can use the FLASH application to update your ROM: + + E>xm r rom.img + + XMODEM v12.5 - 07/13/86 + RBC, 28-Aug-2019 [WBW], ASCI + + Receiving: E0:ROM.IMG + 7312k available for uploads + File open - ready to receive + To cancel: Ctrl-X, pause, Ctrl-X + + Thanks for the upload + + E>flash write rom.img + FLASH4 by Will Sowerbutts version 1.2.3 + + Using RomWBW (v2.6+) bank switching. + Flash memory chip ID is 0xBFB7: 39F040 + Flash memory has 128 sectors of 4096 bytes, total 512KB + Write complete: Reprogrammed 2/128 sectors. + Verify (128 sectors) complete: OK! + +Obviously, there is some risk to this approach since any issues with the +programming or ROM image could result in a non-functional system. + +To confirm your ROM chip has been successfully updated, restart your +system and boot an operating system from ROM. Do not boot from a disk +device yet. Review the boot messages to see if any issues have occurred. + +Once you are satisfied that the ROM is working well, you will need to +update the system images and RomWBW custom applications on your disk +drives. The system images and custom applications are matched to the +RomWBW ROM firmware in use. If you attempt to use a disk or applications +that have not been updated to match the current ROM firmware, you are +likely to have odd problems. + +The simplest way to update your disk media is to just use your modern +computer to overwrite the entire media with the latest disk image of +your choice. This process is described below in the Disk Images section. +If you wish to update existing disk media in your system, you need to +perform the following steps. + +If the disk is bootable, you need to update the system tracks of the +disk. This is done using a SYSCOPY command such as +SYSCOPY C:=B:ZSYS.SYS. For a ZSDOS boot disk, use ZSYS.SYS. For a CP/M +2.2 disk, use CPM.SYS. For a CP/M 3 or ZPM3 disk, use CPMLDR.SYS. +CPMLDR.SYS is not provided on the ROM disk, so you would need to upload +it from the distribution. + +Finally, if you have copies of any of the RomWBW custom applications on +your hard disk, you need to update them with the latest copies. The +following applications are found on your ROM disk. Use COPY to copy them +over any older versions of the app on your disk: + +- ASSIGN.COM +- FORMAT.COM +- OSLDR.COM +- SYSCOPY.COM +- TALK.COM +- FDU.COM (was FDTST.COM) +- XM.COM +- MODE.COM +- RTC.COM +- TIMER.COM +- INTTEST.COM + +For example: B>COPY ASSIGN.COM C: + +Using Disks + +While the RAM/ROM disks provide a functional system, they are not useful +in the long term because you cannot save data across power cycles. They +are also constrained by limited space. + +If your system has working disk devices, then you should notice some +drive letters assigned at startup. The specific drive letters assigned +will depend on your system configuration. Note that there must be media +installed in IDE, CF, SD interfaces in order for drive letters to be +assigned at boot. + +To use a disk device, you will need to initialize the directory of the +filesystem. This is done using the CLRDIR application. For example if +your C: drive has been assigned to a storage device, you would use +CLRDIR C: to initialize C: and prepare it hold files. Note that CLRDIR +will prompt you for confirmation and you must respond with a capital вЂY’ +to confirm. Once CLDIR has completed, you can copy files onto the drive, +for example COPY *.* C:. + +If you are using a floppy drive, you will need to format your floppy +disk prior to use. This is only required for floppy disks, not hard +disk, CF Cards, or SD Cards, etc. To format a floppy drive, you can use +the interactive application FDU. FDU is not terribly user friendly, but +is generally documented in the file “FDU.txt” found in the Doc directory +of the distribution. + +Disk Images + +As mentioned previously, RomWBW includes a variety of disk images that +contain a full set of applications for the operating systems supported. +It is generally easier to use these disk images instead of copying all +the files over using XModem. You use your modern computer (Windows, +Linux, MacOS) to place the disk image onto the disk media, then just +move the media over to your system. In this scenario you do not run +CLRDIR on the directory of the drive letter(s). + +To copy the disk image files onto your actual media (floppy disk, CF +Card, SD Card, etc.), you need to use an image writing utility on your +modern computer. Your modern computer will need to have an appropriate +interface or slot that accepts the media. To actually copy the image, +you can use the dd command on Linux or MacOS. On Windows, in the “Tools” +directory of the distribution there are two tools you can use. For +floppy media, you can use RawWriteWin and for hard disk media, you can +use Win32DiskImager. In all cases, the image file should be written to +the media starting at the very first block or sector of the media. This +will destroy any other data on the media. + +The disk image files are found in the Binary directory of the +distribution. Floppy disk images are prefixed with “fd_” and hard disk +images are prefixed with “hd_”. The floppy images are specifically for +1.44M floppy media only. Each disk image has the complete set of normal +applications and tools distributed with the associated operating system +or application suite. + +The following table shows the disk image files available. Note that the +images in the “Hard” column are fine for use on CF Cards, SD Cards, as +well as real spinning hard disks. + + Floppy Hard Description + -------------- -------------- ------------------------------ + fd_cpm22.img hd_cpm22.img DRI CP/M 2.2 bootable disk + fd_zsdos.img hd_zsdos.img ZSDOS 1.1 bootable disk + fd_nzcom.img hd_nzcom.img NZCOM bootable disk + fd_cpm3 hd_cpm3.img DRI CP/M 3 bootable disk + fd_zpm3 hd_zpm3.img ZPM3 bootable disk + fd_ws4 hd_ws4.img WordStar v4 application disk + +In addition to the disk images above, there is also a special hard disk +image called hd_combo.img. This image contains all of the images above, +but in a single image with 6 slices (see below for information on disk +slices). At the boot loader prompt, you can choose a disk with the combo +image, then select the specific slice you want. This allows a single +disk to have all of the possible operating system options. + +This is the layout of the hd_combo disk image: + + Slice Description + --------- ------------------------------ + Slice 0 DRI CP/M 2.2 bootable disk + Slice 1 ZSDOS 1.1 bootable disk + Slice 2 NZCOM bootable disk + Slice 3 DRI CP/M 3 bootable disk + Slice 4 ZPM3 bootable disk + Slice 5 WordStar v4 application disk + +Note that unlike the ROM firmware, you do not need to choose a disk +image specific to your hardware. Because the RomWBW firmware provides a +hardware abstraction layer, all hard disk images will work on all +hardware variations. Yes, this means you can remove an SD Card from one +system and put it in a different system. The only constraint is that the +applications on the disk media must be up to date with the firmware on +the system being used. + +All of the disk images that indicate they are bootable will boot from +disk as is. You do not need to run SYSCOPY on them to make them +bootable. However, if you upgrade your ROM, you should use SYSCOPY to +update the system tracks. + +General Usage + +Each of the operating systems and ROM applications included with RomWBW +are sophisticated tools in their own right. It is not reasonable to +document their usage here. However, you will find complete manuals in +PDF format in the Doc directory of the distribution. The intention of +this section is to document the RomWBW specific enhancements to these +OSes. + +ROM Disk + +In addition to the ROM-based operating systems and applications, the ROM +also contains a ROM disk with a small CP/M filesystem. The contents have +been optimized to provide a core set of tools and applications that are +helpful for either CP/M 2.2 and ZSDOS. Since ZSDOS is CP/M 2.2 +compatible, this works fairly well. However, you will find some files on +the ROM disk that will work with ZSDOS, but will not work on CP/M 2.2. +For example, LDDS, which loads the ZSDOS date/time stamper will only run +on ZSDOS. + +Drive Letter Assignment + +In legacy CP/M-type operating systems, drive letters were generally +mapped to disk drives in a completely fixed way. For example, drive A: +would always refer to the first floppy drive. Since RomWBW supports a +wide variety of hardware configurations, it implements a much more +flexible drive letter assignment mechanism so that any drive letter can +be assigned to any disk device. + +At boot, you will notice that RomWBW automatically assigns drive letters +to the available disk devices. These assignments are displayed during +the startup of the selected operating system. Additionally, you can +review the current drive assignments at any time using the ASSIGN +command. CP/M 3 and ZPM3 do not automatically display the assignments at +startup, but you can use ASSIGN do display them. + +The drive letter assignments do not change during an OS session unless +you use the ASSIGN command yourself to do it. Additionally, the +assignments at boot will stay the same on each boot as long as you do +not make changes to your hardware configuration. Note that the +assignments are dependent on the media currently inserted in hard disk +drives. So, notice that if you insert or remove an SD Card or CF Card, +the drive assignments will change. Since drive letter assignments can +change, you must be careful when doing destructive things like using +CLRDIR to make sure the drive letter you use is referring to the desired +media. + +When performing a ROM boot of an operating system, note that A: will be +your RAM disk and B: will be your ROM disk. When performing a disk boot, +the disk you are booting from will be assigned to A: and the rest of the +drive letters will be offset to accommodate this. This is done because +most legacy operating systems expect that A: will be the boot drive. + +Slices + +The vintage operating systems included with RomWBW were produced at a +time when mass storage devices were quite small. CP/M 2.2 could only +handle filesystems up to 8MB. In order to achieve compatibility across +all of the operating systems supported by RomWBW, the hard disk +filesystem format used is 8MB. This ensures any filesystem will be +accessible to any of the operating systems. + +Since storage devices today are quite large, RomWBW implements a +mechanism called slicing to allow up to 256 8MB filesystems on a single +large storage device. This allows up to 2GB of useable space on a single +media. You can think of slices as a way to refer to the first 256 8MB +chunks of space on a single media. + +Of course, the problem is that CP/M-like operating systems have only 16 +drive letters (A:-P:) available. Under the covers, RomWBW allows you to +use any drive letter to refer to any slice of any media. The ASSIGN +command is provided to allow you to view or change the drive letter +mappings at any time. At startup, the operating system will +automatically allocate a reasonable number of drive letters to the +available storage devices. The allocation will depend on the number of +large storage devices available at boot. For example, if you have only +one hard disk type media, you will see that 8 drive letters are assigned +to the first 8 slices of that media. If you have two large storage +devices, you will see that each device is allocated four drive letters. + +Referring to slices within a storage device is done by appending a :n +where n is the device relative slice number from 0-255. For example, if +you have an IDE device, it will show up as IDE0: in the boot message +meaning the first IDE device. To refer to the second slice of IDE0, you +would type “IDE0:1”. So, if I wanted to use drive letter L: to refer to +the second slice of IDE0, I could use the command ASSIGN L:=IDE0:1. + +There are a couple of rules to be aware of when assigning drive letters. +First, you may only refer to a specific device/slice with one drive +letter. Said another way, you cannot have multiple drive letters +referring to a single device/slice at the same time. Second, there must +always be a drive assigned to A:. Any attempt to violate these rules +will be blocked by the ASSIGN command. + +Unlike MS-DOS partitions, slices are not allocated – there is no +partitioning of slices. Think of every hard disk type device as having a +pre-allocated set of 256 8MB slices at the start of the media. You can +refer to any of them simply by assigning a drive letter. RomWBW will not +check to see if there is anything else on the hard disk in the slice you +are referring to, nor will it verify that the hard disk media is large +enough to have a slice at the location you refer to. If you attempt to +write past the end of your media, you will get an I/O error displayed, +so you will know if you make a mistake. There is no tracking of your use +of slices – you will need to keep track of your use of slices yourself. + +Nothing automatically initializes a slice as a file system. You must do +that yourself using CLRDIR. Since CLRDIR works on drive letters, make +absolutely sure you know what media and slice are assigned to that drive +letter before using CLRDIR. + +While it probably obvious, you cannot use slices on any media less than +8MB in size. Specifically, you cannot slice RAM disk, ROM disk, floppy +disks, etc. -UNA Hardware BIOS ------------------ +Inbuilt ROM Applications -John Coffman has produced a new generation of hardware BIOS called -UNA. In addition to the classic ROM images, RomWBW comes with a -UNA-based image that combines the UNA BIOS with the RomWBW OS -implementations and applications. +In addition to CP/M 2.2 and Z-System, there are several additional ROM +applications that can be launched directly from ROM. These applications +are not hosted by an operating system and so they are unable to save +files to disk devices. -UNA is customized dynamically using a ROM based setup routine and the -setup is persisted in the system NVRAM of the RTC chip. This means -that a single UNA-based ROM image can be used on most of the -RetroBrew platforms and is easily customized. UNA also supports FAT -file system access that can be used for in-situ ROM programming and -loading system images. - -While John is likely to enhance UNA over time, there are currently a -few things that UNA does not support: - - - Floppy Drives - - Video/Keyboard/Terminal Emulation - - Zeta 1, N8, RC2014, SC, and Easy Z80 systems - - Some older support boards - -If you wish to try the UNA variant of RomWBW, then just program your -ROM with the ROM image called "UNA_std.rom" in the Binary directory. -This one image is suitable on all of the platforms and hardware UNA -supports. - -Please refer to the RetroBrew Computers Wiki for more information on -UNA. - -CP/M vs. Z-System ------------------ - -There are two OS variants included in this distribution and you may -choose which one you prefer to use. Both variants are now included -in the pre-built ROM images. You will be given the choice to boot -either CP/M or Z-System at startup. - -The traditional Digital Research (DRI) CP/M OS is the first choice. -The Doc directory contains a manual for CP/M usage ("CPM -Manual.pdf"). If you are new to the RetroBrew Computer systems, I -would currently recommend using the CP/M variant to start with simply -because it has gone through more testing and you are less likely to -encounter problems. - -The other choice is to use the most popular non-DRI CP/M "clone" -which is generally referred to as Z-System. It is intended to be -functionally equivalent to CP/M and should run all CP/M 2.2 code. It -is optimized for the Z80 CPU (as opposed to 8080 for CP/M) and has -some potentially useful improvements. Please refer to "ZSDOS -Manual.pdf" and "ZCPR Manual.pdf" in the Doc directory for more -information on Z-System usage. - -CP/M 3 ------- - -CP/M 3 exists in an experimental state. CP/M 3 must be started -from a disk drive. In the distribution archive, in the Binary -directory, you will find a cpm_hd.img file that can be copied -over to a CF or SD Card. Start your system with this card -installed and boot to CP/M 2.2 or ZSystem as usual. Switch to -the drive containing the CP/M 3 image and use the CPMLDR command -to load CP/M. It will ask you for the disk unit number containing -the CP/M 3 system files which are on the disk image you created. - -ZPM3 ----- - -Like CP/M 3, ZPM3 exists in an experimental state and is started -just like CP/M 3 above. Just use the zpm_hd.img file to create -your CF or SD Card. There is an issue with the ZPMLDR app used -to start ZPM. Instead, just use CPMLDR which works exactly the -same way. - -Note that ZPM3 seems to be completely constrainted to use drive -A: as the boot drive. So, the RomWBW adaptation of ZPM3 will -"swap" the initial drive A: (typically RAM drive) with the -ZPM3 boot drive at startup. +The following options are available at the boot loader prompt: -ROM Customization ------------------ + Application + ------------- -------------------------------------------------------- + Monitor Z80 system debug monitor w/ Intel Hex loader + Forth Brad Rodriguez’s ANSI compatible Forth language + Basic Nascom 8K BASIC language + Tasty BASIC Dimitri Theuling’s Tiny BASIC implementation + Play A simple video game (requires ANSI terminal emulation) -The pre-built ROM images are configured for the basic capabilities of -each platform. If you add board(s) to your system, you will need to -customize your ROM image to include support for the added board(s). +In general, the command to exit these applications and restart the +system is BYE. The exceptions are the Monitor which uses B and Play +which uses Q. -Essentially, the creation of a custom ROM is accomplished by updating -a small configuration file, then running a script to compile the -software and generate the custom ROM image. +Space is available in the ROM image for the inclusion of other software. +Any inbuilt application can be set up to launch automatically at +startup. -Build scripts are provided for Windows (32 or 64 bit versions), Linux, -and Mac. All tools (compilers, assemblers, etc.) are included in the -distribution, so it is not necessary to setup a build environment -on your computer. +RomWBW Custom Applications -For those who are interested in more than basic system customization, -note that all source code is included (including the operating -systems). +The operation of the RomWBW hosted operating systems is enhanced through +several custom applications. These applications are functional on all of +the OS variants included with RomWBW. -Note that the ROM customization process does not apply to UNA. All -UNA customization is performed within the ROM setup script. +The following custom applications are found on the RomWBW ROM disk and +are, therefore, globally available. -Complete documentation of the customization process is found in the -ReadMe.txt file in the Source directory. + -------------------------------------------------------------------------- + Application Description + ------------- ------------------------------------------------------------ + ASSIGN Add, change, and delete drive letter assignments. Use ASSIGN + /? for usage instructions. -Inbuilt ROM Applications ------------------------- + SYSCOPY Copy system image to a device to make it bootable. Use + SYSCOPY with no parms for usage instructions. -Additonal software other than the CP/M and Z-System application can -be included in the ROM image for execution from the ROM loader. + FDU Format and test floppy disks. Menu driven interface. -Current inclusions are: + OSLDR Load a new OS on the fly. For example, you can switch to + Z-System when running CP/M. Use OSLDR with no parms for + usage instructions. - Monitor - Z80 debug monitor with hexload capability. - Forth - Brad Rodriguez's ANS compatible Forth. - Basic - Nascom 8K BASIC. - Tasty BASIC - Dimitri Theulings Tiny BASIC implementation. - - Note: To exit type B in Monitor and BYE in other applications. - -Space is available in the ROM image for the inclusion of other -software. Any inbuild application can be set up to launch -automatically at startup. + FORMAT Will someday be a command line tool to format floppy disks. + Currently does nothing! -Source Code Respository ------------------------ + MODE Reconfigures serial ports dynamically. + + XM XModem file transfer program adapted to hardware. + Automatically uses primary serial port on system. + + FDISK80 John Coffman’s Z80 hard disk partitioning tool. See + documentation in Doc directory. + + FAT Access MS-DOS FAT filesystems from RomWBW (based on FatFs). + + FLASH Will Sowerbutts’ in-situ ROM programming utility. + + CLRDIR Format the directory areas of a CP/M disk. + -------------------------------------------------------------------------- + +Some custom applications do not fit on the ROM disk. They are found on +the disk image files or the individual files can be found in the +Binary\Apps directory of the distribution. + + Application Description + ------------- ------------------------------------------------------------- + TUNE Play .PT2, .PT3, .MYM audio files. + FAT Access MS-DOS FAT filesystems from RomWBW (based on FatFs). + +There is additional documentation on some of these applications at the +RomWBW Applications Page. + +Operating Systems + +One of the primary goals of RomWBW is to expose a set of generic +hardware functions that make it easy to adapt operating systems to any +hardware supported by RomWBW. As a result, there are now 5 operating +systems that have been adapted to run under RomWBW. The adaptations are +identical for all hardware supported by RomWBW because RomWBW hides all +hardware specifics from the operating system. + +Note that all of the operating systems included with RomWBW support the +same basic filesystem format. As as result, a formatted filesystem will +be accessible to any operating system. The only possible issue is that +if you turn of date/time stamping using the newer OSes, the older OSes +will not understand this. Files will not be corrupted, but the date/time +stamps may be lost. + +The following sections briefly describe the operating system options +currently available. + +Digital Research CP/M 2.2 + +This is the most widely used variant of the Digital Research operating +system. It has the most basic feature set, but is essentially the +compatibility metric for all other CP/M-like operating systems including +all of those listed below. The Doc directory contains a manual for CP/M +usage (“CPM Manual.pdf”). If you are new to the CP/M world, I would +recommend using this CP/M variant to start with simply because it is the +most stable and you are less likely to encounter problems. + +ZSDOS 1.1 + +ZSDOS is the most popular non-DRI CP/M “clone” which is generally +referred to as Z-System. Z-System is intended to be an enhanced version +of CP/M and should run all CP/M 2.2 applications. It is optimized for +the Z80 CPU (as opposed to 8080 for CP/M) and has some significant +improvements such as date/time stamping of files. For further +information on the RomWBW implementation of Z-System, see the wiki page +Z-System Notes. Additionally, the official documentation for Z-System is +included in the RomWBW distribution Doc directory (“ZSDOS Manual.pdf” +and “ZCPR Manual.pdf”). + +NZCOM Automatic Z-System + +NZCOM is a much further refined version of Z-System (ZCPR 3.4). NZCOM +was sold as an enhancement for existing users of CP/M 2.2 or ZSDOS. For +this reason, (by design) NZCOM does not provide a way to boot directly +from disk. Rather, it is loaded after the system boots into a host OS. +On the RomWBW NZCOM disk images, the boot OS is ZSDOS 1.1. + +To use, NZCOM, you must run through a simple configuration process. This +is well documented in the NZCOM manual in the “NZCOM Users Manual.pdf” +file in the RomWBW Doc directory. Additionally, there are instructions +for automatically launching NZCOM when the disk is booted under the host +OS via an auto command submission process. -All source code and distributions are maintained on GitHub at -"https://github.com/wwarthen/RomWBW". Code contributions are very -welcome. +Digital Research CP/M 3 + +This is the Digital Research follow-up product to their very popular +CP/M 2.2 operating system. While highly compatible with CP/M 2.2, it +features many enhancements. It makes better use of banked memory to +increase the user program space (TPA). It also has a new suite of +support tools and help system. + +Note that to make a CP/M 3 boot disk, you actually place CPMLDR.SYS on +the system tracks of the disk. You do not place CPM3.SYS on the system +tracks. + +Simeon Cran’s ZPM3 + +ZPM3 is an interesting combination of the features of both CP/M 3 and +ZCPR 3. Essentially, it has the features of and compatibility with both. + +Like CP/M 3, to make ZPM3 boot disk, you put CPM3.SYS on the system +tracks of the disk. + +FreeRTOS + +Note that Phillip Stevens has also ported FreeRTOS to run under RomWBW. +FreeRTOS is not provided in the RomWBW distribution, but is available +from Phillip. + +ROM Customization + +The pre-built ROM images are configured for the basic capabilities of +each platform. Additionally, some of the typical add-on hardware for +each platform will be automatically detected and used. If you want to go +beyond this, RomWBW provides a very flexible configuration mechanism +based on configuration files. Creating a customized ROM requires running +a build script, but it is quite easy to do. + +Essentially, the creation of a custom ROM is accomplished by updating a +small configuration file, then running a script to compile the software +and generate the custom ROM image. There are build scripts for Windows, +Linux, and MacOS to accommodate virtually all users. All required build +tools (compilers, assemblers, etc.) are included in the distribution, so +it is not necessary to setup a build environment on your computer. + +The process for building a custom ROM is documented in the ReadMe.txt +file in the Source directory of the distribution. + +For those who are interested in more than basic system customization, +note that all source code is provided (including the operating systems). +Modification of the source code is considered an expert level task and +is left to the reader to pursue. + +Note that the ROM customization process does not apply to UNA. All UNA +customization is performed within the ROM setup script. + +UNA Hardware BIOS + +John Coffman has produced a new generation of hardware BIOS called UNA. +The standard RomWBW distribution includes it’s own hardware BIOS. +However, RomWBW can alternatively be constructed with UNA as the +hardware BIOS portion of the ROM. If you wish to use the UNA variant of +RomWBW, then just program your ROM with the ROM image called +“UNA_std.rom” in the Binary directory. This one image is suitable on all +of the platforms and hardware UNA supports. + +UNA is customized dynamically using a ROM based setup routine and the +setup is persisted in the system NVRAM of the RTC chip. This means that +the single UNA-based ROM image can be used on most of the RetroBrew +platforms and is easily customized. UNA also supports FAT file system +access that can be used for in-situ ROM programming and loading system +images. + +While John is likely to enhance UNA over time, there are currently a few +things that UNA does not support: + +- Floppy Drives +- Terminal Emulation +- Zeta 1, N8, RC2014, Easy Z80, and Dyno Systems +- Some older support boards + +The UNA version embedded in RomWBW is the latest production release of +UNA. RomWBW will be updated with John’s upcoming UNA release with +support for VGA3 as soon as it reaches production status. + +Please refer to the UNA BIOS Firmware Page for more information on UNA. + +RomWBW Distribution Distribution Directory Layout ------------------------------ -The RomWBW distribution is a compressed zip archive file organized in -a set of directories. Each of these directories has it's own -ReadMe.txt file describing the contents in detail. In summary, these -directories are: +The RomWBW distribution is a compressed zip archive file organized in a +set of directories. Each of these directories has it’s own ReadMe.txt +file describing the contents in detail. In summary, these directories +are: - Binary: The final output files of the build process are placed - here. Most importantly, are the ROM images with the - file names ending in ".rom". + -------------------------------------------------------------------------- + Application Description + ------------- ------------------------------------------------------------ + Binary The final output files of the build process are placed here. + Most importantly, are the ROM images with the file names + ending in “.rom”. - Doc: Contains various detailed documentation including the - operating systems, RomWBW architecture, etc. + Doc Contains various detailed documentation including the + operating systems, RomWBW architecture, etc. - Source: Contains the source code files used to build the software - and ROM images. - - Tools: Contains the MS Windows programs that are used by the - build process or that may be useful in setting up your - system. + Source Contains the source code files used to build the software + and ROM images. -Acknowledgements ----------------- + Tools Contains the MS Windows programs that are used by the build + process or that may be useful in setting up your system. + -------------------------------------------------------------------------- -While I have heavily modified much of the code, I want to acknowledge -that much of the work is derived or copied from the work of others in -the RetroBrew Computers project including Andrew Lynch, Dan Werner, -Max Scane, David Giles, John Coffman, and probably many others I am -not clearly aware of (let me know if I omitted someone!). +Source Code Respository -I especially want to credit Douglas Goodall for contributing code, -time, testing, and advice. He created an entire suite of application -programs to enhance the use of RomWBW. However, he is looking for -someone to continue the maintenance of these applications and they -have become unusable due to changes within RomWBW. As of RomWBW 2.6, -these applications are no longer provided. +All source code and distributions are maintained on GitHub. Code +contributions are very welcome. -David Giles has contributed support for the CSIO support in the SD -Card driver. +RomWBW GitHub Repository -The UNA BIOS is a product of John Coffman. +Acknowledgements + +While I have heavily modified much of the code, I want to acknowledge +that much of the work is derived from the work of others in the +RetroBrew Computers Community including Andrew Lynch, Dan Werner, Max +Scane, David Giles, John Coffman, and probably many others I am not +clearly aware of (let me know if I omitted someone!). + +I especially want to credit Douglas Goodall for contributing code, time, +testing, and advice. He created an entire suite of application programs +to enhance the use of RomWBW. However, he is looking for someone to +continue the maintenance of these applications and they have become +unusable due to changes within RomWBW. As of RomWBW 2.6, these +applications are no longer provided. + +- David Giles contributed support for the CSIO support in the SD Card + driver. +- Ed Brindley contributed some of the code that supports the RC2014 + platform. +- Phil Summers contributed Forth and BASIC in ROM as well as a long + list of general code enhancements. +- Curt Mayer contributed the Linux / MacOS build process. +- UNA BIOS is a product of John Coffman. + +Contributions of all kinds to RomWBW are very welcome. Getting Assistance ------------------- The best way to get assistance with RomWBW or any aspect of the -RetroBrew Computers projects is via the community forum at -"https://www.retrobrewcomputers.org/forum/". +RetroBrew Computers projects is via the community forums: -Also feel free to email Wayne Warthen at wwarthen@gmail.com. +- RetroBrew Computers Forum +- RC2014 Google Group +- retro-comp Google Group -Documentation To Do -------------------- +Submission of issues and bugs are welcome at the RomWBW GitHub +Repository. - - Formatting Media - - Making a Disk Bootable - - Assigning disks/slices to drives - - Managing the Console +Also feel free to email Wayne Warthen at wwarthen@gmail.com. From 77fd7f0e5d7be717c209ececf959b716a8c50268 Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Tue, 17 Mar 2020 19:55:43 -0700 Subject: [PATCH 13/17] Documentation Update --- Doc/GettingStarted.pdf | Bin 126512 -> 124276 bytes ReadMe.txt | 8 -------- 2 files changed, 8 deletions(-) diff --git a/Doc/GettingStarted.pdf b/Doc/GettingStarted.pdf index e7c0f0ae9d3d829c6ae12a75ce52c56d222bb64f..ebd255b59b31b776569c5aa279d27cad7e99d01b 100644 GIT binary patch delta 69915 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

    GqhssdFOm=(+ANLk4r|0> zj0BOgX5~B0E0A|Ha(*kIG-G=Q8`$Fij;?NzeMcU>HNf}tx3H(w=GNmsae@*fu8Ch2 zw*gJ|`n66#yo|U^j(Sf#XVP&#_dR8Ud{`MHc9nngdsLwkWVscu>qF=_stPS@sgH%p z7hNyMr5!CU{O|Zo zazL9VlJslM`cn=X40Gt^Z_!}$hdbY`XpapNj% z7HG8S_6Nzh@zr156RStYtRSirE)oJENk5EIj=0AXXB&MB>$g8#t62V2la?47kHxs{ zTximIoVf5w6Y-N4m~Edf=GtD5h)X=e+E3f96=&WPxJN$k{JV)ugrBCuO&VA1r9>f=FxxQsK4aTMJT;LQFMEz zLC;GkNu|pw*!um#VxQ*g{qw+8t)=C28pZ^3d^<;@m%8yebItv7qoCYgTh~7Je#!Nn` zw)Gm@r?f4eFwLh+!g|-JiG!e{lJX3rkkk22zftk{Aar!`{)>1=aP@0%1A#lgqY~}g z7vp6uL-7gh32Wvia5kHDB z^9&}je*J#E)9oA7e7-Q%3nkC2;MG=}rSq7ik?6Ubiljfhb3+y;MY=x2sn3%u$JA@zGS7WABZc)#j!kWlU?< zeaG8&K7`?mSb%xFpbwiuGJtzhtov;t{Msk**gg{rdc{9%&mJL)kQp_D`BlXtQQ1N% zVb?4@az0>h^qM}7t@Q<|fVHK0W}llGfnWAht;sWk*uMiVO zs1>XCtfcy8M#%F9jqkBx;Q6mLalDm{jq9URGw-`AOG!QG!^bPJ+^cz`bXTFiGE~3{%5Ofn+BpR)0J^d(iq|jLo z4$qd@Nzd2Ts`LBpQ*ayh=gskQF@voPc{!MroB(kB;`m#MT`G>Pd*2RKvR$eYl>0#r zo*~IVf)Hk^e)nYthw0u4Zu?UxX5b`t%lzoK26hcDy{kq+>~sO*dS~(-yO+wFtpv0M zanE5d-#>_G<-MoY!`U@aG&yhM?xmMHa%-^)(p&OsZ*#{&?%!ppPxGb}Rg~o4I;eM4 z;Ifl_vrKBsOZ@Mg%im9b^8#Yo=(XrHNYX(fO3**~lmD515ks<>al`+UefjSc92gb7 z`oFRYsD#QtX@mcjRrn&#!Sg>Q5P&c$9}7lhEIj<(+|2(+Qcn!&P5=Mo-~N&gRQ3%E z@;7@-9>|9BkMdd&<8w;yYrlxEt*m(#*9zJaDKR#U z>C@T&=1xrjsr}l$to?0xdb_OLusRe&5Ee|U%wLKKVER*>5cgjBd|lU9nB$87KFQ%- ziYYbr+%}CRBIx!rEG4oBvB6BTJI&hC!AVdMG+b1pRkg&=91S?&?d?-GHg6lgco}f? zEb)hPZ`(un-A6GkD-JbgtutOJ7#XqZxOvM~4UC!G&Y5q>o)bk*cuotkr)k5BC|CgQa{_RKl2s8T>PwRwB5fx zp))ABgMFc@^L&%!V}}?2TO0@5&i8?KjR8dy)B?(cEiT<|w#=i&Pax?%v}J6$i2Z#Sv7RO9gLb2&KUrCJMRBB%^N%9F}8iw5@(=; zAp7);!AW50U3FmS$WbVQ?qgu!GHh;pRxxbhDBP!Py zZ2r4Zy4zBvhDl=17Yk&5M=H8PD^>lfGaAG1Qh&tve&7tP&zO@~0Q_`x*xRU#`5njgf}RWo@J#O+H@SnP# z^3#I&qHvob1xo?$N``G9?k5B1QgXbJV_NuSt>~lAwG(O%&qxrQdkWjHGumG&xL&N? zT|-INf6dLXXK6+v`hzII@l^08>H)=a=)8ViIQ46c_s7mFqc7Ao|CFG8QFcQd`99$5?J&7fr%@{rAakS&G`N>PDkcu66 z;PRo>e*plHK^i`;ekHDX2THZ{u0Yz&@3J)BDOgot&}YSUPhjeBW+m6upvmPbSzGK1 zQaE{tUsesx=y^4UpQYMvDMUZ2;hf6JdWv?0Sm~d5YlZtKJI|OaLm}=ZqMf**bW|&#+&b?xx$$xp{HQyY((HGgbdyNSfdkXmC1%-ocADqYM=RE& zIuabW?+j%{H$<2hZkp(oo67fS$Jgiiw2TXS>;r*z+-u zpA@P|b^SAFj3J*avPYc|qP1T2bB6e$=ODzxOVY$y_Ct`6W<6`;@)P;@fhR}`w`KjZ${)*X9=HRWC! zx&5lSqe4l^@Kl;EBCRYWZT$0akaq#shVC5tE*nUr`d9rPXAS`+!tlXhV48wS)@qXl z*g@&RmyQ{mvDLcm{73MS>AO(p%Uv61nK_pquM6zn_3vC`dAhBIidl9x2N_A$5 zr`jF+4&(Wrlnn<$6d;v{Hqp*WG1O~IU-B8 zXenDZ=iKO>n|o12Q1X^uc2UZw#Q=wlxYRhpo*t@M4xz;Oj}-En&#O!5uF8BPO4c!2 zha74U8#P<)WawWvjbxsC*$b)N_(EyuY5FDu8JE6rZ+>~PDUV8_JaoM^qQ(B$OqIp| zhQja8g`bp%gwPO@de=t=;C^EMg!z;4Yis$_zN(j`8mAQeMS6d{Mev)@-<;M8P1c?8 zj@fMHi##nCp_Z@d5?_D2cjBCBZo#iJ1(}6E>1QAN!>^bz!MK$`iA6*@!590ylGAxd z{OS0sx?*23hc97><{aQ0j=-y*D)Z5gWc>W@FvF;?RwbfeW7a_i{E$D~pmu6_itEvx z1e-boel>iCF~%jLadOtjYF_QBX3#A<{q4S}A6P8gs+{sB!rqv@V0MwH?l^o3R)V2} zfWy6KFHAK(azZrICwX$j2tmYlF+A()Wo`Ujr-grHsv?jG&d=ExNnVV5*2m-Co0r3? zh#m9!!?Yra@>Rp~na5kYBxtA@M|Znl{ZER=w1^9(9qUS7Yi?V0G|rAjqHi{N%U`+e zNk=|(Z)6>)E0^LK0?~WhOYy4d`c|&=le3lACt0u1SYJ<_*f^Qq zpNeeZQH$Cj&;Tm<9-pb7z|%}p4_<4^AF(F{ICnQ&%Z;6HiWyF8{?G}(vz2!ap*e5B z@3xT29V!@UUkT3Xf35t9&wjEuC26;KM6lU0dBseplaR+JuSm@HM|F$t-X{v&b2*G? zryZ^Ue*S^tG?_Vdrn1FxzWQ^h$+ zGgY%@(m!sUg$(snoj=SI?8)M zM~3%OAi?gG$VplAzlmHyIWWV&(Wn21|A9epq?8;JJ}TXb%D_TEB1qA2cBFh{~Mr+F>?1rRjb^uS$<1} zWWD25>;lmxa2eOzn@+QxrI8$gcpsBFc}Y^7##)@}ruN7o^@)2QERV)7RNp(H-3Q_9=5m?7Z0uSM@_F>JO+C`<{?lel zsPCwD+?O2r7vkd%st$5Ud%KJdms--1K8=oUiHp@%K#Bd;TO3yAM=nWk_|>a{n__owPAD1Q6Je55?5Qx>ol1H1%*4%ViSR(kIA#UK7mlI{5qT zsw?*I5UK;y?q4>daiEjN*_l>djv9Ql-%CK;>v~ zLb|0^FIu3qSZYPC!Svrh{dy2fe?HuRg?|NIBJ2V{qKCOgpAc8#Y{j5yci^iL#*OaEu)p9nR zNoKQF%_yztu>|4L!80mCbKmX>Vq{%DlPI(aRbdjpn1CqH97cxYl4P8R&uVKDsaMad z7g8{eUR7;Lv~Pr$(O>Ji&SvKOMssJ_iGtgy9A1YasK0!9SJuShZuLcp-DVyC(?^h_ z!oXdz`wOOC-!Tc|WVe@T26Wo=*i@Boc=@mdL)QB;LVaJJAH1Dy9hDs&$jN)A2-hqI zP3g=AFK=IsM*3*`lDHVs)sJ#ju^^Q~R4e-26}yj~StsJ9bZzY}?yPRD5snTrdpb=# zr2v6@5&HTk<4uIcGOc1=0ncsfu6=FSQZ&j+pFT4JvL&h(|VUw!uafInuf z;*>eWK$~4Jx612RttA6GeYP2iYC4f_)+!|~5#p`=8gyzG+j?dZ%I4nFkC`kEAA3C; zO#Ge-`Q937LN+ji**i<5J>=>!4s%~Ov`~M8Z`bR2boJukBtpzc=AAZ!BF*W9Q)e)= zkA;JhmX(7W-u`Fn;?i)9KeWP51Z)LPKXpSGJN?tH<-&RMo?VAJ*bwWluRLjewWGkk9b&!9;ZSmw*MbMU6gXI`5_j;^J~ovT7TU&U&?ZTsx0>kBq4;`SkID zx`bEiBb~MyzWzkd1>R&ka@Id#r!KKaNRm19`R`bT^wOVJuP=4vJ{^y&6PZkE%W8E* z?*Z3BBfcm1*)WrMqZyMKxZW;BDZfQej8Yl}uClem6zdX18TL?~|mYG`}6k zs*4h&411NBGcRxlj+l#cFYVLg71O-@eovWH20pf&K2vBhnicO%*GV;PD|sGw4r=m zWXCtzSn)}b`ywnUqZZ}^+XqN}Lq%b{^H6)7kYlzZU#z(uFop&<`9j?D7T<1e=u{cj zb@wsyy^($TyBO6tp9e_hT{>YEo8yxaox8AR(FZK>3^!buzhL}RtSJ2q## zh`tZE@qc*$1{j27(`Bdnr#|<8hMB;qnk7`3FY>uAmB8Ps-TzUq3I_jM)cd~*R{tRo z$Qn5YRMjdW1*%r{-S4IbHZ`?A=< zY6<5pe%lHSWErkWv<-~2=-b=shtR+}!i4%A_*RsL6}sT%?<2Wyn;+TD{`_IzKFRx) zn7t>*NyrxYIAzDC%e=%V{e>~vhoCwjE#et#yUX-Fgl2sC`pLH(2g3u|9`@PNHUHfw zhQi6fbc&FlrD^n!5SPKwSJk9{dKP+mL!Y3#ZDlUr7j?LVC@V|FdIvp_O=DGgka(Ki z-C+IhzYQ8ZxQIWfuSoUo=$zOFq^U7B8G$pGW zJJjSeu*J56p8qqA$jnVg*tEuJNvUGm=<{?Has{`;CLx7gV^>9h%&iy^*P;&UHJe5W zs`(`5NnmJt!*@jOUD?-}?`2j3maeN5?^#6|SFe`qs!!q|$Ky8BJNQRf#IYEyN^PR8 zdEr-nl%mlcIu{J4zwlf%=3hy%Cg-y7aiHn6<91Ha!+@JV&%k!NY; zg5wFk`~kA^$bNfw(&iIzuiuaQ2D-A9vOd9Hvs`)Z;w_@G)}P%zQ(Ovj{-HkGQ_CN! zoxkk=fDL0I5(Yx9d<2;m;7N`Q0!9?{&ThyS9&fk`<;m=IzpGT|Z<)`Ni=<`WBsr2%P7!j%=&cl5kuVp{yY&TYudNBjqjvw%uvG5rr}7R-X=KF*?!|P z^R62q5uL;#qwOOSS?}oTQ^lCl%L96~pQL8@hJt4Jg=;2et>Gfz06Zk$GI z(&om3J)g(d1wcM{qMzlv&4k_{zcmmZ4}NiAR%8Lhci zTt3?J4Vh-;J4x~uxLnheQIKTcrYQ3tbPkPMAj8o|K$V?Ektk8{Rp=52 z?S|AT5n%#OBD+#DF9q;%xScsMl^a8Xt00@m02aV$GlAfUO;V6Uew}Z~>SfNyP~GUk zsZU)tQS;YdKi4Ps{|=+#eq&K6@0me}pwX!4;W%b@dN_xBUqAMrJ6xzpH7u{VVs*xF z{_6EUxo&K`mJi;2BAJ?hZcorkx8C8rnb=?0eRD=E^~xd?!v_taHCEM+#enWT3IRAz zm7n$&Yc*;aI#viU=#c&(xEl)`#O!3Le_TjiixriC@>l#DndQkPLnJ z8Hoo;Qz)*;CTGfr7j*aFG3gfP+wPM$q`iudH~y}u;B`>AW(nG1Igiz57!w@L1ijl&4o@$>%$JdV z{hGP_^#aZA>5J-;nU+n9ZKys{Serj|`qMl7thXH016gy!`ZU2q%D4PG2(?F&&#K4) zDXovIR;%fgD)5I{g=4QVs$)>m34MxGg&K?aC^u={Yq-jdajrxNJy^~ z@u_4ZPRamVUcT-Gtz8m7sf7K1d`AV@bKBm%iV@`fB!EQJ^~+$0k3C&9e0OzGF(pSbnw>6-FKs?fC39hNBUc3LpSWBoWdmBZ3jQgGko?inLvbe>VXlZ_6 zb<7OQo7pFr+56J+DSHp}W*=iuS`IDd(?Z-u(B1KZV}(!HWyc9;t!BUFY3msc%k9k{ zx6mfhoIA-AvB0}$XKr9214rpTYqB5DUbGKhTNZ9U#6nb5WJ`YzK`7Ls=#V60_P8No zCOy}zi}}VK|AYrvb<_V(RZ4^zC2~xchT?zyy#M!Q6d5cC>b1H5E-HqR{4FYO`5fRD zV|mjaJH;8Wa;Cu?czCo8Ihxc+( z4GZET>GoWxu~;9RMM6{tw4WU$XOGLgA52uFz@rR4=)WC$(0}jstMFG3x711Y6C?p5 zH00`-t+m}!74hJKun5YgfZ=Uri?)XLSoDOL)s#?#d0{WFEQf}RHR+gr0BOgUXm}Wy zTpxM(zuz1bI@^2Fe6;_waP;Sm(zw%mV`q@VQ7`)QsYl74y|6y$q#V~rgklb)u%IC)gN+$2DMgD}7rnmR>Z=hcm& zetFmDj@~VV@wU+N=GRIL1X$+Sj#O$$kex4P=cUtE?8@Y}H;MPx7bzsh-d{!+IDe(VIvY20{U;V#lUNUpyl zr$LFW>ZUT;{qbi;G<*xM_njSCSuUNYs8^ZhYv%yOg|eZ_)?Q_Kgg&DrYs&AaPSSVZ z0U(GKBn}7vI2|cAjjkS1E-LsF^qNi@lBs?|FN}DRB1z`TP7qSGpq|rDo?4e2m z&fln|n5^Kr7!yOZWVElic>a6xtJh_lJz%Sw2eX!@9J$&b|_ zg?O~k5yCH?;_*?!HVW24u_`Yz?3Rgz3*3X_(22^-WR0YY@n`qa0ux0Oog5zm>=Elt z9;27%(Zo?`>6Cz$+8R)pY3(gXU}lH_+{d} z*PC+Y9Yky6MYBq4p;OilHJg6uhu~+ad+4{=ya|^MT)ixJXEM+c9N0jM5+ky*@h#4h z+J6wo7*I&BDBV-L>DcJVW@5E^On{Id37{$HQyRufH%PqsPUcWvJjJ$(LF7&k zhaCmZ5Zfg8;kx1Z3?oa0lSk*JjuxAbsBu-UBpMW76yhq z`=-hI+xj{U>(s-zcO!{UtZACVxkWNbj#F=gJBdmbv2`ZKqyi+hm~_)^eF=s2edj2I z8UPgR54$&e)R{Ht8e4^2%dSc0i7}?x5;Ws5`pfF?-|(>cQ16c#0r`(YQ28&4^yGE*rT;Ey$sjUF~h0U6%?!oA== zHNtEl9H+t9!k`v_t4R&BZFn|pUq$@g10&oZ0quLQKACHnMr#>b)FY1;`VRy$;i1-u zYSsu0?dSp>jP_@jxuTa-nW>i%TVo2a$!a}LA_?{_WADfZrf!Ot7YiheY0n6`h#GtxUXa^mvvGXZl#t5~g9JW$E%Q#s+jA*< zpgx1@39UnAPEm3$rN#Qo>Jzpg>J=uip>zNB7sz2clskPphA}C3mKnuWUN)`#nAne2jIsOR_iuSgpx2Qtb?JDJMLlv z(@|74;4Paz3D5k}aXM+e76Ff$clz6sz82}Q!<*NH?O1|+S+8&U@E@Bc5(u~O{xmoJ zF`oPX@pYC_akgo;#vud`?(Xgo2=4Cg?(R~!hT!h*?(Xgcg1fuB8C$p5*AsclEw)sPo_|~^}J*zHtK10#iS8P=8Z#yqo`%$uB zcp>ub$O_KT`YBd`s z`m)QmP4@fEx1U_5G23%su z2jTMQ(u%9c-#K`owe zC@D}K<~fFAB{32SQED&4Y#GgO8fbL2XWuZwkCOBaQ$U&zK)SaLKij^aFdQf%%m1Z! zPPAen|JsAZM;Q~wn`tA%FcbdC1_Rd?3h7_sTOyF+t+e6sfDf_)%LSPK(=EdU%-U;f z<3a;>Bb-1tZ@gkU@t+fab|t_F91}40<*!Xe0F3wk`&i`P*CoK*`&I@jI2SO(_9xz3 zsebCTDvb0yt6Pv@KlNay^KJ_V3DyJ#GA?!Mj%h+f(GtGS*qb@`{dBo=z20QlLTHR4 z`$6?}W3wuQ>@uGAd7E~3)2@2D%TsqmSW-cwJnnRr^oxp0pGne4K};XIL~J543wx_B zncZA_)g{JZS;<_k4Gw3b26vROMq4moY_1z)tcXrwjUU&xbL0EzRcBe+sYa@~(_jejp^vnTBUQsu_Nac)l7&`LYNG4|%? zvVsXj=URL+DFYdgk_wA&W?6HhBX38Ip4ydbGcl06{7`Re@Sjr)R{<#bv_RXXbv;$*ZzUP-!3F4=F8t72C7I(C33}21qLOJEIt%h z%k0wy^0nkd`h|V`u0@yOp(yyo^MT8uIKIdfxkfVqGIZ;4hTN@sslU`m#9+wP;>f;T ze(iH^CA)M;%Ntkui<$BY0eanzWQ8G_YAp)QM1?BG)xqbAt;s&+J+IgZ$|LsdOWezE7b*Zr1r9PUlVa|As0t*dziVSz1}ZYk4GwzWZ{ z2C*O@&i!7*L`b+b;PWXBgN!OEHRc0DEJl=Bz7bC8?Hz{|X%N{2&Ffk@8fCl+Nl3ZCreoMlpH%3D;mi%l)LSY`xS zz;9VuwtQJaYfO%BeSg_LM&0MW9AuRZpo?OXjY=`|GR)lqwlbi+T z+iX5y>>-0PaNuoQnzshZZi&mthhAZsRbvRK)Z+rSQum*BRR&NausfQP^&p;$jJ9;LVbj1xO$nc^Q#J09HzV@6lf6fOfK76dw#ov{#NCgr4 zCTm>Ov!?NAlX1|s58%S12Eho@kC9QU0u02|w4rhvDf|26URs7G?tC((G6L!N>b*!o z9m$S@#}arZg^x1zT068Js4>LWK=2)2>?wfscdy)e#72H>&S4VcPjsYosFB?^MN9r^ z?~TO5!61S1JKiYmrk)}{@HmA?EKqR_=HXIlI0cYm7+EF}RzP=4r9XZ$6Xi~on*!ws z?2+A1y`j=5CRmzZ+HX~&+uU0{Zz$#OV&)m4L%(UuiR?$ds*;EDmc&|KE zhxUCFBXXYBojxEJe4D~`bTW$C!$wjL*z+6z4FM672_{+d<@Fqwbp`(8AnM$57htEH4QoK*|?pvEhzj6G*x(r5s9lD7unm1tc2!?FHN4RXx#YJ$m-STJFl)oPOA zwve^pgrjr&K68VY44k~(zAh3JWT<$yLk^C>%tp$WBLKx=4UrkAmBymj=Jx~y6kF!N z7ui@nJ)NF790*Awf=a8)#Vh0*I&K4}c_-+y09rF)MJ7p`b} zqZ!VM0s%HEW;04jYIbYx@Mk$y7TnBZ{QFzj5%VDS;)M1hiUR@#ZRvi$8l0J@Fw+O+ z;(G8kyr!A)ko#stdjzlrCO(M>543KuQ=r@R=;qSkld1FU!b%6AVLADiWUaP@CB3>J z{8_^of^`N2@!dvm0Q2R%|omuXx zO&5SkvwfOjih$e`T{UHA+O>5T_o*q=4Xs=-c(#?;id_$~kx?b;xoJwAPk< zch7Mj(=8f0$O_1gvLVl~OgRD$ql|`707l}qP{SUY;{#p;e&;1Z&WSsqUjYBH*u1s7m?d@q6 zqw=YDk}ufttHBd*0@H(@f~QI8B#CQKW*84fYt^?#k~fS%T48QAXea~ay5BBDDW8&P zpT>(mq;m}Y<*=_=xLypR?=haN^17oj_u2uT@si<+Lhq-z0-PfW%b=g@X`MOP77NE}9Y=fP58P-)db4`yumN-R10zAl3Kd_UwpsXZ zLo9Quj>IrvQNF(K{<)7^!5eaFM0~$}$hNRN`{E5y1{6I@M*`I)s?Do>UwQ8&pPnKy zpjst6#M&FKg|i?%GJ0Abn$!T@o?dSEFGAD+9wL42q>XjkB=j;uX{XDoJKx)87nPLB z#u4Sc&6M0D1KigI1K_Iv_H~^>?ecPpGGWglCx}ypa%$(dNG|DQpnPefAoJuKrt_!% zncsB^xtsU->CQFApXGDoX!Ficd&gccOF>Rhqi<4vYjV1^Hpr&#??wVd%|p7ue9qvj)RK_Gcm zVc`gx-H|gTPcS{g;&)QOp#fcLg;?gIKLevRX%`;*m+XX(PW#9-PZmA%Iq8cw z2l_-|S?a17G}5MvhCHyv)eU3@zc5YYI+1;^pn=BbQzeWSEfEnT8~a@O?P}h35-_IX zdhjZ`gM-#onP_lhZ~|Bl6Mr&IsiT9CQ}uQ>avtyJg4`~g@wT?ZzS)J+wx-l@@giCb zQg;Wj)Qt$^sp%9r9Q^ot0|DW*=mtOOQkmO(#rnM{ce;(v;>I4=LO$xQ(DGR4XMTli zdsNWMsmxdUef85|K=a|*@ybhh7XV|6;D_4+cPY4!lM3Fd^;bI+Ou7nbVZxn+3T?lI zEd*W(U@u8bRZ#^iqC)a6<6NAV>XZ9cCmyd9Z(Yo=n|Iyo|_!Py`&JaaG3=F*vnk1Ivm*XRK!iKS`J2!LDoHywSy z0qsIs2h|O?^^(hLsYzfea&Yq(S2As1PAC+ctRzq`_IuUk|4b>*vMQ4CaK)$o$26c4RQfM;)e>viaQ_ zeqZ0aZi;WE4t_5P`a@C$9s$h#p=X(#eJWNmA6VSE@bTHfY=+}#CM`we?6R-VA9l+z z;+Vj06-O#fptpS+E`PX;!h0~9y{DHFj@7z{hibc;CqPiktO+h+M?M{sG;b#a3nTXc_sU-nM7T(`Qq~vRjo! z!s`ru#IeY53l2FuiN}X&v#|Qb5YGRq-7|+{6^!}wY~p10Nb!L6F=Qkh^@{IFwT8asSsi>u zp?Ev~3HAq+(nR(;sVH2w(|~z=uD_IIJ3v4yQMt?Fv5k(f70wpdd~Ou{Q=kWEY>a9# z)6e78N-nxrN_hprRs=|fK-4PYrmaKRz<};;t;x?O^t-54`e)_YHcd4A^L2(RX;f3X z`;xkCPF0up{0jvDUt!QjVbBReSJ?wy=LDPGLq4vMa$J#NK?sj@GPO^)hPF zbG4VSE&H9b9O5v`HZ^$OXW`_J!T^^@9EL(JEVB4@#VW-CplCz1ggi$y>caYzpgHt8 zq#(1PvlOx2NQS|wwm%ZI8VkQZS)UZ#!*PPInWI_DS)4zw8RQO-7h(dFslvEQh=q<% z19j$>O_+d+<3{Z*@&p!1o`$U8SorgvRC6=beQM4}XSQJf&NjEy3eJ_94oU0_((02a z%z%C29!u60z*ZK5ER9}&7Ot8RzilXHEJHS#kSCRwh`D8FXg0u&uGdlF_Ev>3U65gF2$YmLYK~n zZoA{Azb0>`{MnbMd+ymz#d9*_ia31kGZEhxzUP0von%x-thC|9xU${O;c4u)L&wAy zc;P$R3D5aL;>i0AFU61t{1?IxlI}fpo?Xl_VaViQV^64aXwr05^K;k|&>)9*e}4Kj z`A6lCD*$t1KY_2rNgB6GY*DBYoij7qBEd)!?sEQT+IJu1TvA6gBURWjN%i`%v7oh> z3c>dn1E)49_TRvGyb&C#M1run3_Of)!0&-R&<7V5V8>92teZ4J^tjj4Zq9^h3*VC5SN+uxrje%l5A zZ_~?viM2oFKCJY>%AG&sp3E8~>VJFdKP8J?9PIzgw_%L;%RtBfAA_C0nhO7Gtn)v- zFUdqGplIMMoQ!{O%QQ5c)`pOM7ps@VtP?*OncBnMiH_Aumd+@~N|zdbMI;1qR2Zo3 zH3<3rZT%;2kA7?D4eL@C@Yk7F;N&g&lJ^JFmHX}0_MzUFTI4>td~sX+EO!5F%aqUT zhVdgZDCT@H`IAER&;9MyD;;aPqoj8iZ3nNDZZG&n?_Hn#LEv@e7kK$l;{h zUQKU>&mQzlp@~C+PUr%}NCYR|Bu#@?^FxHC`!+-Ws~(y;Zqd7v(p$0Zk%({mdd@apuV$!ZmyFRkZ8)Mm1k^2EbK0Dk_TOKkd39;%CWRT-i6%;5g; z-e8MVb3Cp^n#=4))n=cm9Uc-FKvb>SV&r`EnszO! zHOJvxh9cE2m{s8kIN?cYRqG9u!=8c|giG)GgVsM@K0d||H)TgeZ^(%Xs#WSXQr%?Y z8zEsR=T~0u&JVSa5)-oeK#2{sW`-{}ZP6xC0eA{MCmxe4EtA;Hu&JKXjAd+*I=PsA z?!CwPq<2D8>X}v7ln5m&Ucz`XB=7d~rIp-l;*UY%XzEgakG!a6WLQvL3AH+E&Q1fV zlbc9>KZm+=K7D6rUKchviHza$VnhMs_{K_RqMZ)L>f4S|V3lVS7vH0XM0P4A?iM?{ z4tS=JbT`#)wgq4A@EDT&{uL<8+g9sSNK4*lVNE%?~Uk` zjsOk|m(e|@omO@Rla`G!cEp#th&)w}dnBi6bkHU!Ci`5cell2y<{w3I1`W@u4@~v>rCuv zBDOF~g90DC;DH7a!*FSe_AlnZ$;A2KCH;~+(ZX;7$G7(>>RFo04!rJKXGlDSVuFn>2BTLKYqDQ)_b3hon}|aV%AbPn^p& zh7?aimOXR#(NhdUsxY@G9*FHBUEh(LXs-90#F7)@y5Yi`t;2PYQ8NY@Sum7@#1Ar< zyO)0c^rKAvd5#?g-*srUNAyhH*~TJ@dU}Lv)`%PD<>ZEIe3M?Cfj~4foLAWcolURF z06pcD6*|u;1rie};A2N%o1s)$pOS|olj$ZlzrGVmC76wEKzV95s|qQwUtsF@6MIcKj9q^ zLKhPyldUn%f%d`;Z_#l}n>wdd?1?9+{2E=N>Xq}b8mt+LCBe0M=eZtpO?h!lsgJQy zz-=GnJbXr_>78u=9GpFkeCPk(S2iB-G=-GR{ zf)OJha~;DVe_N?e{nk2;qgBl~*;e6(WLRhUkxE~^3dKFAGMHtqLty7;$n0t@DjZG_ zd^QITOwu<`BFHa7)pyUy{WNtdGC}Kh-U9@IXU68#@KyfxTr|kLr|)|EB*XzdS0i0vTUevl=e#7tb10MkL#Kc>f#Jle&Z~Rz|3Y|- z@=ZK>>1ss=a6Vr1KuiNe%G6=Z$o+W-IH0g1iSjX!s;+hqoWp#0HE{Kt;ijM9|1d0M z6=n>{IY>Zs`0{fkQK<{$cxF8@k^oh7p!N6UqkK~@1M*L-OMA2lx)xa9H!R`a`{8ms zf^DIcd8ez(*oVLb@Q_Z11K+QySo4hLT#_EYt*H?GwT@X%L1BVv%t{Aq-erLin$1rHUyU+5`N;tg({6u>{S$5UT17`J&d`oSjsXv!!lv~-Re4qZ<6*x zttc-9iocV_KeF(vo7ek^0PXIx*Wc2W^Ka?;SJ?eur7Oojq$@4!A1Cv_NYTIBi~qL) zUi_IW_TQ@We?AAOEB|ind95L#0+##ycjo?&9tAdAvUB_|n(e`e4%LptLD|<4Y+9B zX!}s9!jyS7^tx4a7ABKuqaKJK+E1TdR3s*{%nTn^p?f#wq6uufFuCHH>29?r@zq#T zVGRrvC-x>vQjyuwG`@MQO?-&IEWBx^@|3oCm@64>h8rOPbPg~yoYT)Hljc<`m0OtKhF zJ2zLRdlp`-Y9~o_^J(AKmmW$!k-h)uiga1vUF>k2j3SfnvzVN29gBZ~1GkJbF&J-X zND{X@b*Q*@)*?^01hm_<9r}ANgz23YWN=aSZ!K9LpwRmxCp6NySlL5>D&k1SZkQ##no-{EYPakDat0L#+xLyG-5@X132g9Vtj*#xo6d6J}3Lp zYi)3T&*8}VNPU%(xA>H%GY?+I$NWnly~pII+q@ewS8pxI`Doa#cJVL9@o`VBuR;yn z4u?I-DmjR$Ly$BtO$!&P$((TtQobPOzv3)h!H3_dCEj-C#W#z)2x42c$@T2rrXPD1 zh@Z<>tPKKbGXTLo=DQ{Qp9AwVaC){@^pr9h%}YtJj(8fkP9YF8>v53WH*3uo7i>ql z%|kFOqwH2a0}yIXPR3qIv}Hb0Jlcb{b4}TPSPfG)oc%Uo)lfX|hzQN~xUeh=wx&wA zK9(bzw}lDKp7l8!n=2qUQ^VJ+CL1hM$x@9m?-|x6bp!Bxb%4b~ZI#9pHov7w6O_wz z6D5|z`Gonf5dO0hK$DbTFO?@l=F+IHWW^mGWyD$fE&=ADQ6wtv>OS;|LNC2yX5;1k zho>0h@lZ!n21gdMo3Ux@=$!Pm$>Tk&MWvg&Z7gFM)f}}XmEy1!OI7;R*BK9@h@Q4Q zH;CcU2m`@=b0t-ez-^Tkmlv;WFXI@!49un&|gKk+R6|n41f9IrF4L z8S1?773DhJxk)Xm9v6&qAhaMzFJk8)=p&w2SUR1zL*42KpjK#V6!e*O3&P z#Y&|PBQla0yi>f$&>WvfSQh%=Xh z_zgF?i&;QbZElJcSHi^vX`C9&MuqsG-*34JjMCSF0mffKqK36jO`Jdtf+S5!iN6<4c2fApeZH-|nhO(0bbC?1R`xC{5Z|T>OeaWI z686jlpVqSj5NTxPH8og}f8TUPALWr_rc>q`myS(}d-gQ$VI1RA4Wbey=2%S%4Krip zE)MlMy_&39z!IiR4O*x77KxhkXFh{+2Ci#jy%0yS^n2rS6E=OC_dxP`gQRZ?LHSzq z#2jI<^^c1L<=l-FnSdtc&t|PMHu!!v!7V`td62=LPnAb3)~6zYx@|chsFUk8DqEDq zyp6cl?ZINIpD}kT(KihBseg*x$g@dxRh{;#r$C_)>fW(4(7i+@dEW5xSSq;S?Z5%( z5uZ{r5z-B5Kn_@9)8>$FaiG`Emul)nq&cjF1`MK7)*>8?hLUZ!Yzbo#n`v#$GZI9;(3UuoWiNpKLPzF$D$(|?Ovp8$xOglPY(Z3MNqV)G@jiCd){rqY#Ei|5jUM z7p7@_ZVo-2-XtjL9IRjx;x*d&(kC{N<^2Xx4i>~Ia3=^2bs=V!Q}3Z|TN#2bQW1F`qcc?%7t%kV zA8tF)2?3{oW9q!Bt4b4OT>_JldmdMmKP49QH& zX51=WS^Rx>5)>s&dw6ZqAH2zcm7sY`f!cJ0me2DSI}_q!jnMhK`5e~7@DNcvH~~fz z%{ykn#I{euSrZm%51bi^pTvqD-w%e12@VsoWaP|kO*Qv{rrTAqB(ikM5&PPzWf?^8 z?AwvJ{A^}*+6lJr0@}-c1>32UrT3Tu`~Hq|iE_5%BYA1NBA_)wa; zZeM4}V0KcR?7?E496_*GnsAF-#6FRrUEPBkQ5F_!HQunH;rfD_LqP)y@wp+U#3I=s zTo{%rEy{L!p+F*rKULQ&z7V1><~nRO@4kwug^{>9e+!QHX_@{E`0Pb*e0bbF4X0ey zi?^q6AIzM+qg*slr5|7Qzy_OLHuI`(=aCR$|HWJSShQf7v-|2N6PE9>eDf6QPp8BN zo*jwQ`6ra&%T6&uh=u$%S~xbmjslg{H;hE}S3|WsZ!gY=LdC^FOzs46olhyX7}?M` zS)oXC3Ywb)7@G(!fP7kCm=c$7R|{yrD`N6@SIv0~% z?aD%F)lr!1))>?F;*Hu^xL-o}YHIrBaBKsfveg3QJt`wtab57}u$RuK&>4)@P1#i- zjqZiSjWa2v#E?&zpw0JNIqL#mqc_#ZuPAT3yw)Dy-#NAOUe8^pW*OvU1-fKT9Jb97 z0g&7vbFEoAQVInqd9=j}rHHEUFHhTmXh>Y6zvL+^%O81)3goN&`&yYbUY?$u8%SOG z>&pLVcmgt5{#C59{udeIUk9%78xaI_f2O1Vav3<^1j1!FfCQcY*eSEd=Ne-n{bSzw z4>kHHt_Q}(7{8tI1)QB72yp?L(f(|Rf$9A}ZBMF}^R|cj) zGew0X(W;~M9$w{jYT9EXs8nJM^T_tO9o*iN`DR?Wx+I#lovip?o7@9XY>hyTNE74I zS1BcwK2@0aOiWTI1o;!l$s9$(c> zp8TS{xO&s(OzJzA92pk8iJ={`e;?2*%X@gxEr1ttk}_G!eQ_a8p!gkmjKWhwL@`&s zn#UOEKSP|MPUd1E0>1Cz1}+98Vqz9u6PPuI5H1s5h)m8Il7gUrgGl&bzenyh#l-OB zrym%V^i~-kww>>b6B9$*temDj>O&(>t@ljYB+|ZpJ!tULjN>}qU8k^1p-3g{LeGy3 zpFg4Xs#K_rf6mz7;;z}4ICraV3NSu59bw-mQkbgi8uL#BjIw$s-g_LP%6;@)pE-Lt zd_1w0LxL04>26N_V3M?WYOtg}Pw3TwdB_c!$tr6s)BJMX{J5k#Sw){-w_ud>eM0A= zqm(6|4Hu1CqF?Dy)C=iwvpmnav~@I%$%(9!z8hYC>LOKj^)1Fg$sjYB4Cd3-w7eG6 z7VWFUL-P8ni15yHGs~wL5YG``hV4S)TNw{&)D82|gE4J1tTxzMLDRN-_ z+*4sKKTd$hB4hflMorX|bOgT<&h&QD^p|?|)`QU$Zsj-;Y-DT^7P6^t-@FPKB-GKv zQ!d9t)P;v(J-Eg%Y!chw09Y?KHJ%yNlv`lxhV*zSRAj{X zR6`H-h|AgggA+V)A4Scf?o>wPV*L1aFA8PieVl3Lt>ccnORVfuLD#-+2BmZ?Nd<$* zfkc^p)a|P&%m#~#UHFqFzbP>0s3pkIEM}s?(Qd%5U>U& zbt4zs0R6C?pn)T78>PV+D!&Jeh-KuBqTGex!dsxEXt=vH<>G3Ap8u^y+)+1yQktPWJ~jl zfVk8GBR3{e=apG+e#gUHLS8}wIm9OA-r~lHf+?69M$zzs_-0gV&Uu=5q2U^)<#NH> zsn}0lPFJ22Clt|pbfMm{^7@sY>22+4dn*D*r$i4O3=|3Skj)CRq$Y@sCPY{ghWGMX zKa}#6achK;spDS7A5y5M`io7n+n<*308lNmlu)1u)#;&E=iNw>0zdQdfnp7VK^MzP z0X++S@Qd0xp%BN^%Poh3!mmPCvYGtpV*ed zIYs}xExyb}{?y{(jfqL$r4UuM2y#30Xgz;kgwATg>vChVtV!xkDX+;u4iT}?>leX9 z^{$6AVs+$A)!_#TV!F>w_=Sa796AXAGJ6nm{O1M=9FF{>BoUSEKS~mrfXGX23cmlm zhqC<%rT@=?50LZr-y@rU!k7NONyhVk!TihC^)F9iCgfmY1-9S(FYYWL8sz`;>Ok{2 z6R=1c_+tNY3kKen|Br)!zinMCK$O)VZq>h^{OgnbpWg>Kf&!L1asplF|9*}M2(kM= z-toVDWI(zL7trU9@*gLGv@9$P{6FnJfB)x1{})sHUs->&L^N=YKOirlau`&XaQj<1 z)D-hyiok%-6Gs2QYnG^3YD`FG9rq`S06o@&Dtq&d-?*wp^r@ma1(7TB=fe2-% zFME--TuelhipEB*cqKQFqF0wpKK^v{*=*1#y-LM_tO^$tj(m-CMCTL$srMT!g7|#d zl!{J(4DO<);^ATik*(dOu2BEfHCmC0jm!pJmP4*$W9nMVJWgR^bYKUiL^8*AO$R$# zUNm@$vcD|4EDJz9=6h_QFdq=ge_0+}IC1XBN3`H5VIQ=7Th{jD-IH3%n<0h0Ps4~p)Vvnj*A6PhNPbeF*wp(G6HmAu6IkKp zqWvZF%3obyUsNa42j{G#e!4H3mM+g4^4skCcoyqNJ!(YT^8ZL|sH*HGGEe-rz~(pd zMW8_WQRf)&6gNxw{rkz+fhy(Nubg)d(#0MdNAvm7uNP-`_b)ah%0Z$;9!hrCTM|A_ z;6zW>+bjXLF9prL{HeSHXd48(@2z7g-^5e~3@0jCzV9^1wxQ%9j?Npe<@>v9Qan`o zBsDY!8=z9g8xgHEf(*Rg1@6b-Qb_#Dp)0??nRna)IMa|L4TSYhISzKwPac&4e>lGB zbG)2!+txWpyrc@!*-m4tABsw_2fn|#zeB4N6AnOWsxMMUTqv)Zyjl&`>8!F((~6Fh z+r_$6&+iPv)@DOlFXwMIdc-yxRhU|4Wawpf{qjBzB{?8)kkF$vy~1f)F=N_M+LVTo zcDO|X5Z}$N97zc9^1TcOOi~%4KuRHG=3!*2nE6w2 zHZxUTz)xs*u_ple`*yN9(Lf7fdL@0^qx&d+GfvV4T<&=2jx{zU^>i*QuK>yz5B>~c zA9Y}EgzVCEMv|Jv2d~`Mag_LVpZ%smv%Df%z*uQRvWJPr(PuYa^YFA`qkf1WT1zH~#L{KrxAsaLm(%QmlX98j>dC5gkHvJ;(5m4ScTb`(L1=BSXhG6wV-8rDn%D6b&)j^f|aB z>30m|ONKZao7-`)7hc#*X2&ARLAV6yfOcy{^d;^((Pn~+&OQMQ1V*Xw%JE=ZE#3mK zX_Rn`$u#ULBfMXBr!D41VxBx(%0H~yUT^MpgW?I=+XPB$Q*G;9sdw4Sotq)f(o#|- zHjB(`+o)@oEM$7kLiLNSgLt6#3b%$GieJnSf?;X^DHxJC3EqR_%NF^CB%U%7uW z@N+U-_6GMtbvvULE0H9oY?0uiEA7aQ_4(I$vv&a%iZ7=X{S~)Pnh#({6 z>AIe|c!uUn!OYAM0qNa7Vr{&4n=$x)}$%xs(fwcHMJ-|8A?G4^UKP*v@)x zWMmUYcpE7%I8uZs#vP{Mn|MSj1J8d;3AZzp*|SHLM6c=pIT8Z)q$vGDe>)vgbh@mx z)&)uTrfwdB8W&QFpJi=x?(IH|_YEy?8xdTmS4M1s&+6KPdnc+DoPtdNMnY#Z7^R02 z9ppl;iNEv%nz8qw^-rsFJev(-e0!Q6;om>%8U6{)WCD^S{^$=N^7XI3@tz6T@xB=F z@q8r21gyZ#62~8i+8-P*kX!Z-4#giQ6AKWH``;uqR8Sz8vRVLx8HkqU1U?h!69>|O zfiMang_aS>c>V8Zeu<|^C;CUUKO&tO8pzxQx~-VwSu&X6nSm;U6S&0s>z*HPkBS+O zo$&?w4=EQ2dyBWupho(4o6}!6`ppa=TZ{>4hevj!1?;uJcTHCx<+oW@AQO1vx$!P1 z#IIyht!ioQXW}lQ*wl*Bxv&+wWatt2fh?T-;GL2n6%T-b@qQ|?zHJy~2mFq?ems0d z%=V=k6b);ba%yb_tc9_TOJYv28!C;-q^ejH-A=yy-kR;`y%|3qKS)}{uDQ8-k&P2$ zg?sSoYp-Iv7+TCTEM{2=a$_mLPXVM3R^+c1 zj$XeGDeC!Jw!=N^56Nkxp>b#}eKsO!YlqLfFMc~%SS9^h7@f~6%hii5)w`(JjNo~O zDT_#RLAOuoY80~!p~}5Kd&$!54+}vvVMb(}2FU4`Vrint;I;6hN?hq>z3sdZRBT@R zPPzx3ZxP-a)X`;=x437S4>>l(19X{GD$ZyHDxO4V!?z8~jP07JrF2WaJcQcuy-Jd2eNu!<#4fhWzg@N07|AO;UGkG*5BRhw+L_ z0M0yq#oHGX&We~|j0n}v9Jklzp`~VxP3aK6fElTy-U)ij;ZNnnHoB@i+|RzyQvd*(TKaeY)?Tc zp7(R#-dYdbExkX}#9^_1Xey+HK6N%+0=T6p^f$;R?<7FcXgM|&9=l%@Mn<~)7~czV zaUIG|=&~*2fmF{@D@`&cP0bCGb{%RDNh8v(@aJhJy>bnhQB}+m#2Gxoc+WV6;{}cu1&NEw_cM1)lyCTKMsU~K0R#qD zgy990>``<)YZcE#XOM;n-Z~Lx*Sh<`| zAvI~Ik>wMwr~}xq)l2T26Z)*$2N*Tb?&t9jDdBGQC`bi)3-BZ0J{W-|aSWYey=ksb zHiKFEHmCCliszKMRxy0gRY>n{v35!4cYXS6ad7NSx>(VPOr2Uv1_oc#JBT_DE(kXZ zOmSHr|Ch7%6WBms%oIuzUwi2;ax-7h02JHT)f6saP&m#kY&Vi|167FN9Ds|8xm6YO zjJnEP8Xhb>CEG`4T~0YMS|edT6B>VXl%M2~ayVX^1AdV_Sgsf65ATRh0FLf-?)~<~ zZSq%5dd2H+Y32$bF*hbxhGbG;(4(B8U?JGyJbR3fM=q#{yY~0b4D(sxBysY83kGqRJ<-f z0$GrXwc@I-G{o%HMuie%_g+pf=lOG(BFS^odmU4--@yB*Bdt`aRX7;}rmbAjh%221 zTpiH&Yq$K=Q3LqJezsRg7mRFHXk@o=PO?mpvK z^2D;7Wwr{40zQDiB-J93QI%#$a->uy2jXwCgN+2swyDeu{q8DtQi{?tk% zYM@92RoxpO_V6lKj{+aS1r@`@4}jp|ymcF z(83@ZDv6pMSAcQ}EQn3Vp8rMhp0P=eumI`g={TA07ac`%Y8@Cj`P~JLEG7-AQ7Mq` zJ)D&1n{>8{^QAwgt$+|MG~{_E7=@VZ8rtu9e81smdxMyHV1Hz#2~$M|XYWDG7=$e< z>GKO0&hzz3C5nY8J0!_Fd zTd%Qi+HStpUNDjj{EaqsCRvQHr{S*pQ=j1r&OG2ZfgK^yHHU<-5j`xCW}nP1$A=a7 zIySo+V&&o?@f`i_?Vek7^+!zajMwh*01Y^oyU=;*khW%AX#;htfYLSPjmtHXJr{92 zYSv4KVcy%_7upUA{n~JNcN53dv}6FUNUbN!&R*DuaGt_^x`#QpAmfp!9sg}>egD^M zt$kGsvQ!BMKqRGF&Hm1B@)5Z4LAtje?N8nF*G6TMhG1{|(zFq8nY;ba1kqBZcel2e z9eS{iezkk3US`6=W6Ub80WUDhwB@DWB6h6jHZSRrW_{VgyNr)3CP@HRu&))>^~+dK;yY~AwCW}GZ1_a zOzHi{*o2+y&vkfKP9US49JPD1VkX4~#14;C>LvMtK9J1!ow^tSVL3&|yKWlujd`FviEK2}-7lOu*p`+Ac-zpg(laM(%4m+(y92vV%R7R*afl`9{RFE@=|?s)y)GF!E&a@GjP z;o$me+kiSLDp5;vasO(!ft+abvGxIgqbL(DZD1$QC{ZlkW=}0CP`1cDEhsV89N}KR z*bX?Kl1nd_Rwed5%p@`F{2EWTxqfDT;+t>9rWMO*AIh5UgUMSS8!b4=2^*sXEDCZFvDF{Y%)(79=@NCzVTGsXC2>d ziKjLm%ws54wqG*Oahl!Ud5F^YpDcbv^5xMOTz=L({!)3vGkKcP(B^cD`(1tCFjakT zI}6jTsn|%XYw#Spp^CWlW-BQNAhP*=YVIK;V+#6514zcRUlPUbrG+Q=Qi$D~5O%9i zw}NJ*oxdtoCE>lJL3_B}%5u2I-7((E%XMV0XI>rs91qQMY-Bbbq=!6e*H1^z9Me`* z7Ka0aBXVM!O_W-vb^k>tT5WOU7WFb^tgffu;Okm}!DpU`4m18`=(NdX0Mm&f>^dfI zVD9^|(f0*Y5XJ|T9vfZLAl;)@Crk_zkGsx(kyIaBz&{Oj^gZh(B*QcWU3W_P1N2_9qQ^AvYC1{bJj^vS&6HY{emN5us z>Xh;2+J#WcF!JuFkM#In0N#}kK)N8T>NZEqTOliVEd(yT)lf*yzGUDJ7;kP4Bvzga zqRur`5DIA!;k9Rce#0%aUPDHK6;SXT{w)69(YSUZ{!jLt%znd`1l<@j1>hxdghQ4d-!Obc)Z~S zFd@wrW+nJ5h{7f?1MFo-z}M^nYxccsqQxRQF#!p5$-9q}M{DqDhVA|dFZ&NP`h0=& zbY&-S5ji!CsG#@w087n7#Gv|SMnq0Ik)~{O$iQmdYxU0oGBrF4FmxN%H-Zqyb%dFM z$4BHFU^vP|Nm-&&n~JeBJElv3r;C25l7t{mE~(12kV4-!{e=ofi&zIwd?HggnIVcz zZUlwjxLWFAVLB|5RuDiAv@AKUI`~G6~%$hZ8*51rnv(j{- za>z6Wy&>UU`I8`o#!8$|h=}&X&+;Tpyw&7>(-qWT@m&fF<@a@%zgXBRG+A*Pk;aV;rEFLvL*C=F{PXD5I#`mx_5y*-`=2NGjB$oO(V@9 zYdm}Nf<#7B4(WF_*1)%YD!N|ku^5kODpE`<&mVeviD`%sJ%NPiTWEp2 z&qy{F<=Q?gDn>sbAdrYvR_{MGg1f|yNS!KUamM? zf_gKpGN#$IImY0Hz0!)zhc}u6wUkC4$_8o}U+S^C0y|Q!PB-0jzPuL`JP_=LJWU|Q zAVtqfMzb5x88ESyHD3tz)k$@Ji-+m>!p=b`^(mZ3YYvGA<{6l2wv*B!=(U%NpRf0W z`SPj3bpi@<#f1_7)0HI+X`md}$7N20o6aI$ig){*E9pAwndvD0B65}X{E>>7)$seVi);w0gKsPP7K!aesvf{QzJ$(T_4p(2Na z@0N!e#U93u98nlL?~`pZ_Hf)e0f;q8#z&RXb0^ckCBiFmOKUtfsM`7A%bihN{uD?t#IwqPZPC;V}V z_^~th$yQe6*Gp7uZ;_)G*b~OayT}mpo|6vK^q28A%xVku(Rvf9mgCvor3zBd&2A75 za7dp2auN{+%veD99pDlCZzmC9@VyT+${#Ngs6jC`#V=2i|2y>nw4a!i{N5!55Ip|J z+I4Tp0!qjW@%@rJ#)|O>{y8cr!pkiP7zX8C2r1nd)fxfT9{1sUEF9PPQfI2FB|@Us037I z+@gHHb_)UnL3^ZF|1e=e4|F)8w^dls*>h9`5nho$NiBhbsv`LQ14V<=kE9FmUOt=K zR+s3Yj}I70fQ#oO{w7~rJv4-y>m||XpKqY>GJm;kf<;?FFE_FXn;m;MP~`kVp?4sE zHjJiFjZB$r)H@lmww5+>6a92a8rd5EqbpInA@z31f~G6gmq+UEUNIl5i?6y^jUH^X z7zu!Njv;oV1>w3$knA;tA@bUuyKPN$0m zzk%Kn{z~@iv)xK}s1+fL67+o@G64sFZjxB^C+66}kmOKrbZhR0b?jKB?rf2$lZjKc z><%CLNlEvID1xEoa7;JEljg5g6c-h!vzPjQY(O+!6U+JuS8JzH^Xg9{tF$-Sd^Ez@ z0uo;tD-7rIQ$Pa^m?Y-QY71%Rro|(82QV z;%>-nCT0vsu*?oS^!DKKh|%@djyfz|<#=j8g7&YP zBDw?g4cQ%=<_o&KQtExI+vcto@d2tKMmFP zT4*b18!c*Vyi$DMIh??d!5=4sZIRm@u6_w|oDvTvIB=+`r9d^xoe&PmS-5nv?`nE1 zAWsQ`FZW7?`3S;!ah~s;MPToK^(8ZV`Wanwy$Q`%`R!BR!3mo>uLm3M zZ#9`P_`d`W$oRL%SH*|m=+oHE+FK5d#t&BJoV84%lc`Ted9?&i-7@sjT5j~|hK0sJ zo=ilCW6J2+qAG{2H}Slnyh)W+_EBvjTak%Sv;L-?>qxoV?-=9ycvWz6_;}3Pj9Jlz z^KB1p3QdPzN^#w3Xpy5ikDOtMP7YftU;$On%G6Iu@%_* zY4y`h_jJ^Hl>J3FKiP_P^e9>?58X0#8D!FuPTjQOi~00ZLV_F@n@ovEi5wIfaW-Z0 zS+cc?HH=aSAjI$&KO3Xh%HRp-S8@aN^sylU z_Gs}LqTM5%y)0&DJ~l%YuJ(f*kV^x<2JV1r^$bSIQgq`ZaAYS`Ebki^MbP$DyHHOU zYmus0J@KI2{KUg*LEFCVy6(pvPwnFZ1Hq?CNA(Rahbz84Ruph077Pq0An{F++vChO6TKM{V0K%p!((lq>2 zSe650U6{+A^`tU!HcWxy9AgKV@0{o7O&aLFsg;bl3mZ&&6s>2?ZpnSJL2Z;MBJ=n1 z)#|fb$2_^*scZt*)66Y>M~n@qWgiiHV<=blw#>a5 z9kQ7iTMi!bxNz{z&5e}BT9Fll;C73WG^R}3KT&e+8u6AAobC3>s|wqxBp@=?rdw@)C7##Ld&66~_XQ7+c@@ev$KDm(L@u3|+f!k33h zNan!FwoJ0aKj2Vyi-9G%%j>B3QB;q2?p!c9`<&TC!tjrNdbp8Apix!=I#Y-ADlGDPQHikAny*(WXx%v^l#4}izcFSm zy|Iy7M>IH$P7N_0tv2Rvu>W#-F*1ZH$%Pi^V{S<_rouSf>8$Tsx|ue0pkMO#a6E$r zU69b8SN=oZR-3UhY3@FG9I-$hy|w6zhy+9X>4zr85#F_ti@OHm+DVXRVRH1viM$_d zl@jg(kH)$~O!nkHJ%co;r*whQbkuaOEJ8i9SB|1)btw-US1l}BB*4sWz zHM(1W9l!jAK}c!(dL(d>oRwFlo3&4;^K(`B;irh$(bXSYvtf52J;^4h_7wrbz2)d$ zL=pL=h51LAl?V`t&&@>r*OB$VY+fS2>qp#YM1tB^Q9_$&*r|ci>Oz1Q%)OJUDDXoL z2CP!TB0xPUK~bRo`F*u?eyCH8IP^y!2`e9v-sqn{^di6V6Z~8Df$r2W68-lG;D7^Y zXLtdZ6qj~-;(ts6hIoazg@K|MrnQXZ|D5zI^#70JEHu1?9NPC0>)%S2k~&UkZTs(H z?7~7qzhwvgzuvON*^j_Ns{4I&*UCwmCodeHeGg?s`5eRvjVr`fA{|?rZA#E)3+30zNt*EP;!i^-b7!$)+&!$UKU_`F`Zvg$y0u+ zk)mI2kcecl?$65?C_}HasDOr~A}j!Ti0zAT+;}W;b_~gjbspX8-2XXy_;a4%Se?{*LpMf;wQJ&RHox9NNC=FLLBv8Uv;QcEHNsz!wFi@RnUy|`JI|wR(GU(3B1+e! zzTP5KG`S|%NOpN6;}{`|#{5}pOz)*iPoEx1G)=~ecV$0DJK?kPEWpe(zuy0|1PYf7 zr`qfLM3CaxX1&^P?)0R0kKsuBqcP#i9z|pUGo(ybO8@2(X-B|(x~}A79#=J=X>8Me_i7r zau;GiK|aT3Oz!BGNsiX6M9$hm{RkN>p>e`=EQ6D1c7*CTDv!;8l$uG@6-cOfh=*D4 zGhC=fw9;Xl(r{Qwx;5h{40bKgN2M~nGO~{<5`8YcW=PkJdj-(5EF@TrAl!^DLp8gR zKVmpn%RXw;r_;L1<}jv8g0^J{takgT9B1?$RXQh!Kvv%w#3Jj)!_VA82DR0mrS%H7 z+bJEjqQN52&J^uQ+e0rGEI~>Kd_`a2Go7G3Z%PIqYzG@+ok-B78k|^~V^ffOvJzLN zsHk7R%RnWO1>-4S92JW{gD|A7BEePj&nU5~S}^Rpg*O?GI=;}~Nq8qWhEFYkcGce; zmPo4(H!x|wR?a8Kk9O#Vd5HLwAn&P)`?RL~Zf5SrI&!Tj$X%cLb?0P>+PjphaoszA zF9Wz$KG`Rc&gMJv4RnXGlNJrg&L5F3D#ei5Xo=uy9P~d$M-GrC)U>r`mL{9D9+YPa#=7+k9~5CkvZSKyE))X8 z(zCjqNPNW?WLnCv!!#had$`f%k_6AD`pnpJ)|+frjEku3{Y&G0{CM6lizHUTrZZT~ zKfd}g-(tXyZGfKg!9!o`)J}1;`6nC>17W0enYBMM$CooFqM*VTCrE9%QO|pKnT|)~ zq~_i*ZA|Ok^z(mvxv$*c?cLu^*u=f+^}xC3#{Jxn7j>L?O9y@clAky|KRSHZZS7NJ#$kU!~D zlY2Qwe1e@SSGh@I4q<37sSz7u!VKOkft}R)`%}G%(P7grdj%(wws*ufS_h z6(_3vqONJlXp3Li04r>iKKk+IK6>jKV%$R_u+qx9v2Uh>joK(3TTy4A2wS6Gu-Gk_ zAX#eYM^vzSm8Vyf-{a5e_|<$=+`PoDh%WgR>VsH=*+Ya>gpf=vyDxX>61))#LK_?| z1byOdyNC<7ue0mHo9%BB-g`||YjNPzr~NV#_Eiyv&Dz58zU2&+c0`03mViirO6FJu|Jz3w2+%fR zVHN$8Sn+>cVnlw~cxeBTF!4SD8t`uc^YU_w0IsY2fZ~FW|K1q|a9$A<0>lFd^sE*8 zmySc^|McjEs`t}V{A1{!e!S3uI&#u`70JJ0fE9rfSxf}b{(d~le+>$Wg1LDC&z;}? zGA39S+iPR^q*Xc8xs-%tI`rXlrE)n&o z_&p`w#HvU>R!hTaJ=keYqi`K_r8bLK)3zAyRX-IDy)Yn*)GVG>l+lWUS5Kh{^>&2E ze%$mRGnq-2&L{aW9}(P_6TudfhnfRiKb+0j}gKd zw%XLgIhxvhz?la{S?g7_D#W1_r9Q~Vvd^R&$!>-oaH!`OtozIZFgb{;7x#*u0FK8b^%6m;u z-qK>9)y*q!hlxdhZi>2$=cuzu;mW`w;wX)h`~;y}Tn99M>cIVlS$#x-Xnt&;HBT1% zy-nEHGJDn$N>-Gm2kB(}T2fZrEb5TJH$!&;oYn~>&aTH!(^>YdGn|EENwGLgI}YlNxfPEcwTLLC zhei)r3mbm$D9+QvtW8unR!@^#Y)Wv)F>Z*Hdon+Yn-H`VM0?Z8`vkrf_-0ncf^u3m zX2tCB@bnq;H>_d;FTMO6t=kk5_PYGF(m!J3d zy^Ejsx3A$p4p>oP=mE7XiNL)k7f3vN@AD@Lgfj>T3j?6ZwJj4ai+909@06kOJTw21B3C2}3czV?!Ti@<8Y3(1`%&K_KdaA1nf>ngK`w zK5kyo`xE;fk{0U4NCMsJ!-h&?|MqzV1J-rmhDIyE3uM3r4lzOCFP|uwR)7z%kn`Qo zQ-|U%;K1_&nduhf355Y<0IVnw*$7-3MFE91_#TEG+DXj{%iQn)kM3s){&SYdAFN2wx@84;psK+=jL<(|0FQ_Jm6d*S11<$c z09mk~*!RT<4vC<(KV@NJbs!9A^&ttAW(6CbU-CW!mlO&I^PD&X>PkAde937Wi4 z126E4JJ9)cVBT+@)c!<=VsE^H7x={!=pN?(%mrLJ?&l6{M1ll=aRjo71GMfrlDYW= zUQqDYYBbpYHRCs5)DF<0PCJg!rY$0P!QcEj+rohdqG<2&QEm&t14b9%&ExX^;|&P? z=1}~05WLVmcj%zfJJ|3-zq#`prx(1??{5Ze7Z~}?o%_AAUbIMkuW^J=&y`7rD(_4fWj5X^(anI%6WqNs|^&zfU2I3 z0TY1*5(%I}XCwFUi;^G$DD`;>&<~W@xFdwFo|nM$@&ZjI=)#3Jh!>V713)-lp2PD3 zOaUgox+;fNeFOcn^FZaVdjOF8G&@j+n^dTaI1zN>W)o(AKfaxa3LU@Afd~Fe1MZrj zCr5;_x}Z!b=?PIKHV9+@f(o7zR=$Dnj;`=}sp5R~Vd2nI$6RY7rX z2w`{Vpkiq24Pj*~21pnLZMh|a;b4L4ppZMl%6TjhJ}6cOL_BmluK zF@auSqeviF4;IiHPX(d^!GLdsu(F#PLVlP#0K+{jAO;X@ zh!mIu&jzZ4-H`#UVK&eR}OI8(-lMo%-P@sv4CI|)WA3+H)sR4 zN&|G#^MGhTFcdnV6X4&UclDkZR1K4+2m18+Kua(;27u^?{2*iy%$^bGv;~9iV53Yx z=PQBxtxhll&3r+S2!NdhAhU-WU^Ig;XdkxA3OurkfW}}AYyb?t=sg7u>_GFO7)TZb ztL6Ym%o4xH{DTvqrbz-s3xeTt0|3X8AUO~Wiw9_`Nr4bSFd1H;X(ZDcK^GI z&SL?j(E?%={yqRd_M(3*))qi40{FMMaSwJs=a+8v{y_kE_@gzp08$%(0de9FHX-2Q zKiGhub>4eykY5V{-g$sm+#fi=%}?;pUMzqZP_WQndH{I?{5zlmSO}0}z(Rjl1=P5J z`S=e4;35eY`nwQd;|2rr$#2wx00}~WE~Xaul7)~k{yyCA^)IEsBH-T@lPH&?=PjmD}w-c-9PAn zHv#7ROX{!a%fF-o1pvT&e^(U-_R9B{S@&7R03XNS+XLh)F#lg>2?MJFSLr_^z^eRz zNe~7Y%>S1J2%xnG0|BAG;Y5JF{;pX7&<$wP!GG%`SOAs)AP?_fFks`qY8~7&3%I4; zdq)020FVIwO9F7?2mj7LaSsNN@HgSG1#sB~|F+UYfFV(UgkRZ%@6n0ge`kNU2S|v( z55OPX0N(*0&c6@$=>GBt00D#l62}L8zu?~~+W>TYz-I~uJV$?%#|M0;fDh?^p1=VA z1^zM#a1;dw|8j{B_&for^*^A%;(xPx07!w=f937Crx>WI4Ltp&<-UwI_)ml~Fa~@D zV1d8e;R8Mc@b9SO`+2~d2SffwIRlTtg1-Wpe<9@qI0<~?f9M9@KKNHO@$WHU`CpN~ zzn_5Rf5#i$BLzMHAUgQ(ynAKJF9(W$oC3i2^jjh}=C5p01Ag-WaiWs^AxIn^URVH@ z<_nxb&on_elmeon=sfDyPPQ-X07m?6(((Z=xV%u1DGTJQr}bl#*$+ayxQXUzuAZKr zcC=MY1_%)XSOSQ^2`1~J>4M?ZJUcs!wu`6|9d%X@cDJ2%_V1gavHe<_?;v&ZShD;~ zEHv3jC&6^8y9+*Z0WqM&-QDFK+-q|s3}Jmo_qXJ=;m|;$h4#)U8BLxoc>d6UBwDvs z-e^>58Y>7=G=d?#mlxbjOG^vsF`OYwPBzBGcVcAoVZZ!=-tO*G%^ov4IE;b2yp=wI!(d#T$cwJ9bE4>@t$t6p=Z$OYj@cW}azj>NwhU zGj1U`!k>21chzJw{17Bf%reWx-SJ*o2GO--xV0_H+kvVf8X}wj1j* z<$-5(&pg)C%V##9%#=SFi^@<+fb?jeVQQp82)3D+UT;9M`8ygle?kJ=?uY~KxDIdU z+ivtDZl~#P8dyfbKGfk<7aN#>q-p7l1u$np2O?D1RYH?BR#WsCuYtgjTr)Fk3%=S zWX;~*C{b-{=-ri{W5_9f??PDU>*wmkFkf52_Z59^QU_=8z+(Q6Zhl^R=FTKPq1B{` z8g3buUR`y^eIu0&DOA5hQlx&mVRbT|2(fGJrPJfdI57)poQZSd=H_{S>o;YldOL73 zFNY29{hE`HcrB4rA#mr>u#QD6NCN*i6A7!v+4H0*ER@(KN6Pj=N&dBB2;y#BvP88|V znX@yg5AxO3t7)ESanDY}(x*ck3VkZq_&B))=E*kPl#S|Ym~ z>%8LY(H>b{S*(tl4|UqS#~HY`VAl{EtFun*$6nuA^VMgUP&WgOQ6?QwK-0`8G-cMx zY8{8?w}gf+6^Lk$vS*o<$EH4shl~wFk1|+K-zv;^%NtC7jbNBM_YL=G_DWvL7*O3W z-C9&x$(n^UWx6O;4hgdAw=w$J9SU7|c&wdgCco_8v&xgAd)IZV$~{7P9M}iRK$uJK z?q=Vla2$2l*6$H(2pH{z3odF_kSGXnD=VlC)hx|=D=V#C3sJ-lX0pa?dURdAw^Q(V zl)c9HQr*0ucABvL$CvAIHVRIsfHzOF2?FNzI$uYozxGLT9hLi}#Jp(Uiu)Zz&RAo0f+@BtZ?8S$yT656-t z(Ngx*YF%^fu%?|Zx!=9QQg87J)p{Q)+1?jOIGY+bFkFw5Ai5r^h-g6*M~p9TYBue8 zNp~w_58qCDMDGkaJui<-hg=46KLXRp2ep#XOW7$th#fGMN2fcC^26E-?4;5dixeAI z=)Q58S56xZkhYIl7;VasUo~K*5k%7dxyeSeBOft&tFy?vqSrGh0cndIWq1D>5vF3{ z!p)&Rdd1|^X*&VvH2e#SyeAO^)y(_jt4FptYoklGj3I(46PlPlhRb0mqhwXjIAJS~G1NG7VL~u$2JoEake7#f2V&MKL?h zckf*AiFT56A4+^_b;#??cPRTQLvo82KhYXE(5F-vn)5BH7aqMny=50!+lSX0d_J1T z5vylx=F-%EqQP!RbcKz5^NR1(ym8wqet_*eR{%UudfkJcmx&N6+#LS#x><%)vB~Th znP84}RMM|!x_NJI7UG3+~i*yTwn z*49iWk_5R(^xd)2!GkHvrb{z3KfE)RSr}*pHGJ~vUr#l6<&KT3XkN6E^xVQ9W(8iL zXezJ0(kn^9guFQnF6C(Gs8_gQ&flaop-AI2Zejjr;f14UbG+q3o*7LdaUA=i-+^vwIPGe(NnWM7+>H!}uafIxOHE7gM7Cj)A6G0$(oXPzCKn z2|c!cX2X2sCEH%Q**5owuUX*ne2U$)czV6{=QOu*xRBVb^5rfKGU+z@1TVkfs<|-| zAD<@2m$8i5UoG{rD*Vwy2Y%Y>FO)Ndcxqrp2!~HQy{c0dIU8=@H4H*XYBpbM3mZ+! z6~l=4W1CXDLcol&F2hd9&Spky?s&<}->Ybg6#LwWa4#d4`P!%@W@@}oSi7E;bwjDy zh+42pa2sN091zTRap2gjHs5laLuJtOks~(@$D|dL22~IPVa~NqBhgEzz3I#zHH3zJ zwn^;=!EM`nvbrxeiFbip9iUCk)lmEsf>v!e!^s!X-*c!{43|fG^G>lUYjwrqKWFD^ zFM=OvZ6B5JyG=2zTQE9`_#P&}46iKsmkAIab5KKAU6>n?hRujm?1Fs@)Uoi5a&q?M zRNdXE!#lsg)`MwZ2AT}ep06A4o)$TPjdYi(s8oa=zi%-L^YcNTY89B_Z` zd-l4rC$Lrge1ZOxQ6CHHoXNuA>P52diBCIsjGzxV?VTg%p2br1CxsPJRzd$Hc%RnW zki{K{W1>xe*+DqS!|+(nT2YJzyFXwyQJWn9Vjx+ZzMzVnv(&A>_W?;}U_*$Wt*soo zZClDb5rQryM;i9KYf4AMP2bCkBj-8(XzB`gMz0NWoga{vtqH9oFy_=wYdVQ{P^Bv_ zTV(UuqQS1lZ6e;1u$}Ssj}h^dON;^f+=FFEP=!t%O78?=t4uq2Io0k(s$>htv2wv& z7;$yql~`+JM~Cy|;#1pM7!pCg0RD;%g~SbR32qZNp&AULn15?^I1`36|PJ6 zL9#2$rY|rzOmaC#l@ zQ0wL{-rB`XMUxAiMLWFjZ|*Z^P)>mKhV@{%@<{eTIX|qO>t_lQh7*n(fbn^MZja(p z3T|$Udq<0AC4O>dSH+Vi5_qMvV1b>x~^DiD(W1>WL~wmpT^?!w3^P>k=9A*7`B=dMV$n0k;} zr<3>M6}tug-j!vc8A^f&0(vWoF4gvQnd_}095{GrxZTj4y7}{m=c92WOprK=M5!4v zxXH~ZjX~;HohCO*bkHI<2i2k)@{@Kk*G<;!yXuv{WVzbs#I6M8Q)WY99HJ`Z+Mnm6Vrn@^?t} ziNWk@@kl;GZ0g&TQ>C*kdmvf(_T0NCDt-#S_MOibQ{N4p_c>-p={hYL$>pL<}<~)bSnRS!XJ`kVoa(P(vzC6t) zV+}(kKB7z`tU_-jbf@2#EWh^^@}{a|OVYSha0;wqeZWJb(Rdl5`XKCC`Nns&Jz;m+;5Kyka?#!EK8 zQyLK^ff8-SNaf|Z?D&%>+-|0${+rJ(si#7m$IPrBZfEo})>h|+k~iF(9z=d_=cg(A z=(8Rp%Uw@IxY?ZUTd&$$Qmy+gt3H|XNj?Qko#Kos;?Zr)u=xQUgfv5A$*v~Us`AXO zsD@kdn^@qNxu;m7O)t*(n|Tr2o!JSQ*pB$RUiVSX^&rh%M>|$3Xzh6KTX6}Iwd_Ti z4Eh^9`NC?D_f|HnM>HQboyk6q5H5esZT~6e@v`LhR>_e2wNvW@e0jpjNOP|nN2jj@yWY?VVQ`)!zp&S48bc{ZS) zL!(d*?JL#!_=uZvpZq6Zv+oM9P*N_^HZt6J_Nv)2?ow4Db}={`nfh;#Uv`Yu1vl!Z zO9)4iWIJ6GJsZI$`RpwEQ!)rcm&lrGOkvM9Q1=PfG6I&sv<W(jj&oSyHM%u&k;wISj)*H+A3x_?g+2q80g6LBrToQ&ygc$j zNm3m-4lmY63y7{j7E?kZT)bsGlnGu+M}DT_^WkOH>!)q1U5xt&RxK~TCsMQr9esT$ zcy)c4rmN9*6N}nqZcN8d=3-Rg9&+SD7$0?!w^?e8=beeyM&UOnngqB1shR!lRHKyV znX-0T&43TwfCQNxwX)mXaXziqqZ@;#cQT(Y4bibbN(4ZrtJ!u!2jflN)k1f^;(i@X zQz!;U67bu3V9~s%n z8-lC4S(cD_Kp5Kqq-3ja`+Cq7`bs;RB0-4!;UgvrnUNBC5ebI<{m&JmF3vI~1_`~y zC6m#j-=(M_O3e$nbNx-^XI~Wk%bqR9He!d@YuxEua+W7lCqf&(C(z{PPapuv=GcgA zOjm>#8S8X*(TJ;ZU&JIgk8LYSULVu=sJF)GBJjO;m<$acpL{h|m_+JbQ5fr{+o#I) zisgsdvKlTA!&i@4rdF;v|JC876()mZs}Ri<+eI612<@1-bBB4OZPyU0Y-}N>PA{34 z@6ITr48nwyesXH5Z*geIsQc>HFihnWX2H3)GaIH_XY-JBMfrL>obfe@a=>*N|E?V+ zV{ZB@Q_J=Rq_!HY3{tfxf%4nQpHW%5hJqx%v^_NUYw{^QC<%T*9XLbADW;eE7E43i z?Lm2hGvo;ss&W)jom1e&dCypNy=e(_^wgAQqD(D?_NFTyP#S^Ymt58PCl-~yU#266be#3nr_C_(oVmoap16AWn5u9D~WD21i6zT%)wl%pS&b%w$B59-nP-$zaSWhReHt47^>= z<;o4xVjyKhc3f4jK#27$JvTN+G(=m~c*zU#@jd{eaNw<(dL3!?_Od))9Noe^&Ga2MBTQ>ddf4iYNtx{c zfgp~7ljA8OA0Jby$RGV%#j-nA>|CItObawylINQ8n|0E4(Q^BMK`GVg?R< zWjl0XQDc@@&d!D520nZ)hYvwH4r&ZOkRmN#PixMNph}b8H*A#tmV)7!=s%Q&H8(Yypg#ck)2$!wk-6QP||AF3^kc@GQgX2MK5ECEqdagIL@iR z%E0?oPRbfj&HmA>V#Ml-3&So+B0?eJrcURhG2iE_EH*hEX>wRImqS(!#^%0P@er3L zOgk`FbymPY91^B5s6>&rjO&3>+$lFEA|1=!oU*@(Qly|6en(Xf&df-jt|FEWo$WWs zj1zV=jt%uEHoP`U29)PM{oIefDjWpS%m`~udnp(?_{q$4_+q%&8m9KirlK}Wvg%9B z(&Ug?V@^aixyMc~yInn5)q)IJecGqKiijAW&4wci3j7kzYfDa=U5G*5H}X&u z;pHUUcEHPRvAJjsDxDXfy-vf%PWlFKP`JCD$=S)T-|Tqc?0k;$s*`#{8z&&?US{|( zNtfT!Z>>a0ogg2|q)!ybZCGp-^-%T8!Gija%8%1HZ?crz6u0pWEf&reQ6nTF<;Umj z5qJ~+XS`O(AEx3h^h)@q8_kBk2E}xvr$rC4<}~p8{Z&C zf0zjqQXFxCj<7w08CPqhe={vCgTGt?3)vNMSqfdL($_%pP$S%l>akzCq@V=&ew>@{ zZ!0b#`H>{&QoE7tquu4|u~Vz6T#qSI(%wR^ z+@20e&Vo@jb_0frqb2ZLgYOTh7l4p5q{M9IyFn6p{(kK5-w9qFK4*+h!-bsHYRN~t z6!^7Hns@3p&}d-s+CANL$<1(V^$6J93kpv5WR_c>{Ic}MSc%eYMNNCU6>`#@`~6xF zpGs*;{7a?(3H}bbvs+Zt*aQ6lZG3o%5gj;1)z`hTm67jdeYg;|T{|hh4%Rcg%XHYb z#h(9wNdH9Z5&jLb$_FQI$=*!(yM!x$RgM-Pf2W#YLK_PjSKT2Q$ot(9Dg4U^sxQT2 z^j&)vI$y^>7{ol(dY3_UWWEIX&e=|>iWQkEPG$C{s9U73K?8J8D~P(h2E)x;1&$6Vxq$ zXbpa@E!S{RUp(yhTyhAWT0;tf>IpPv>qkoG+Ca!iD0L#ZJc*`i$N6K8t#rcF(xui# zM*^O|KSf+x$N_8*j^)&otyF~fEHhdUC9JQN8n1y$FF&l@V2{=!pp`1U&8AWlrAV#{ z9`(=CMza%QNP7v6d& zz=y0-UF3NId!O0e9HU~>^)gzj<9S}U(XHpR3%C#3yK}2048~tPD9ItROXC;YrL=mU?~S9le+hc2n|1IKhQc5@X+5nMzYX<1ji>y zs3iG>MPtII8$xgx5;MWcf`@pQCJM_6(RZ|oL!Q?XC+?Y7AU6&VcygN5B}Or)_~xUV z0Q<&IKR@b9NL$&tzFtQ~A7g})ta!5M zfYfb$zB~2)N@W?;a9`?)=3BRZh5-n9aAHT_H^Y(a7)6p}F5!)RFDKDU72gN%0yR4l z5j8IRuyo>W(g{jV-tNzIYQ?X;At_iyg|%g_8NPAKfj}BtGKjuC84)a}o1;pa9yPip z<~*gO)vM;a@bSa_sd4nfo_1>1g?1_ToNh+JQ>DSKMTC!D(MVd7fq59`T`-1Cb_JT* z4db-~^x20}dB))7Yp|-rHU5huS65E0ln4A@V7Km454|PwvdBif`S9d|^+qjcRoD0x zYpKni9YdJV=jrk?EH^&aT+)0rjFw6q{dj3KnLSXx)KP885=UJc5kR?NcfuMb^k8Z- z!BdoGa;BL)$@$I&h7j0*HGbjoj7hAkOIaf2eUxA!YNx0!3T|j=fKNOA4Ul#GVMS{f z(d%K3cV|-T{#`Y5B3@;c$OR5QrGV)6_J)*W3J)^Hd?7pHONoDgD8txHg0&hhAo#7c zZll++_$No^7urCFi}2gIC+9*NxBERzGnISdarJBjNvYLupO?$Ci(grcjOxuQ%HkIo z59vjjX;===dryV+WjRPZN6_KhT##XTIXYl+;>|Pl<~E!4`%2T--0jntFLP;*hJ`6% z8CunV-VBc;jI?J@oAx7#t?BwAhqddEViY?z6A=vcH`0qXZCqcEwcQ=5RPgsj>Q%Y5 z8gkz9M#=8pHO;!fBu^7?V$V-G#@FhYBtI;B$*i%}J!f$A8K&s zfCL{4p~cl931nU=$gXzD~wOCBG|M$Guo zFwHRb!yhr$7aekZB}i{e4c^_nD>@)S>n(5RB((@AF>WlfbwQM~7=OaaV3_K#Pbu-{ z5EAZhOe(n{J62pvVD-eov;QOBtWxKm*n!C7#qn;U#|wU>=eTf`eANaMV#SL&Obewh zzR^s1roI=AqVe?@XPlvj;v_N8i5^)cxoP@xXxGraqWyn`J$FDANAurd1r-Y*3YMo> zKm=dAyZ54kDE2}z3KoJOs3=7#7A&W+$M&hwi^hgVR1`sDLn&exDN$pO(O`+9#?OWg z;WvAQcem^J{rD$w-t6q`>`vRenOmK_IK%q>-Lfeoc3hl!DbTT}gVpEU;1zU5Zl%XI z$EJ>LCye;)Um9@ZZdmR5oL#~2(W8n!r(XYXJ7id4#Kk6imVLgu=uy!81zGL3_q_jZ z)aw1Y$^E&#E!GZvc)P2Me#63zdk*@hjvZgIKdpT9>1;Or<)cj=#UZ*00lOC2chl8s z^=GdEx+{m5RZU;;nr^dajAM#9&AMd3nU$Y!1s${gE5~VMeXBZ)qUdEV8NWC*Cx<>t6Iq-thUR?WvssaXFj%IiGo--s?(9ms;U3 zi%YM5(L0o#u2FaI-yh0fX7BJiaw_F&-#fM0s&PRhMs9MT`aS>l{tFMAAJ6Q%=wDKN zKKWx}&E)H!90v4Q^SHdkaf*NN$36pn<64BQE#vx4FZ;o<>5Ubk>-=kQPQjgh=h;qc z5j}r-Gvn{30~t4Jw~nKq)qj7UQsN&z zbRY5V*k04n(z4*9oJcnZ`#M*r)m=F@e0Z;)>x4hP+NtflQr7`PJD$IJ!)4gf&i51D zpOoDBb!d|e?<1e{{4?}1#oc`mEu3b!e+{jh#8T`7U;JU{; z2Tu37XlO;p=9L=@D`#hHbe*wgc8Eio?dy`}bLQ_3E&b_q>BK)K9JuLb?dE%H-X%KQ zv(5Oy&`RQMx9;1w`0dN|9=6HOE+qNd?mqIj<|B%jN}ls&a>l*}eG*7x+{+{f;xCdk5EAKVoFe zgAOBg(TiU4bGnC3T0J;$P{TuOTKFgSd-U7D2Q3C3IpWgr?5d;}cf3!$IJhG&D9`)e z==G;22F#trrEN~lJjqRH*n4Zuc57YdCqG!(cWwQh-(8Ap_IJBhi5Ew0NnaX~-`lRk z5bn0;q~K%8UY(7niXG$sr&zPujsYuu7cKhaTAsbrs&7n6hbP`Up4|#!ryYv8 z9FTH$=H0bR*JZ^`vT|B6*DNRwEy+;&252oo;tkw^5yrR0_wVU zo^>TY;%RK%r}f_MyT|Puzt($lr_22M<4fi}|7qx?H+#1JFuZBhr7)*xr!CI_A-wJWYSU(ert{^^2^{S2eco04Ych5vMW#GT!(%dGjb zN6Gj5u9u&@*==v+riK0He9rh%V=EW8`QgLtt7)HmFCMo0yN;zEMVrT)Gtd0TP^_=e z51ccv$DH}>p;;bo5LUeU*XG#Yex{!u%o^jRn^fm#qf6c&=RUZ-t<+Za4GIss*xUA9 z+jnji6ABt9S&s@{d2Ea6-7~L0JG8O9~kw|>iuP&#^awV*Ed;E*5|roZEe78`tHVr&b}vCRyhpHnjL>d`(P>aSK}Am z6VAQ$-}SD7`DR1u`BfFSicb#-tbclA&5)|I%YHk$xn^JEzaQNj7hL+-IQiIz<&L3C z8yxZEp6z(;n>mf@wY}wxXKxqxKBlw1c&PAwjO*Xy0ynK}_M-p9m(Qm@if?N-sNI3U zlqVZrbt@RXXOm`KcFMeMi>8)@&V4_tV$*jOv)%JA1lqgxtq8nR`Y-#TOB+VKxH7$H zY?JTY3+5G_Ueaz;!R_43u5uCF)Ib`KMZs_swj_hczBj;L!Z(LQ=&#J7P{dWGM zU+Q!&=vH-X(!;d-2T%4szdU7M!?2RHN$!zB-j47>MZY6iy#^o6JG#6oV(R0`O~(v+ zl4HKMx&9bBev0F#%bsJ5^)s!Wq~@=h*xx;HVb^_iXFSnx^snb@)oWF==tKG3wo9ih zHrHI2<9{ps@E4ngn_YWv<_hoRc33gA)T&l)w^Zy7D?RS=r9-FMwLIST+A6QjZo%>8>Bk=xeEj@und5tpk8a0HZf{F0`XwWO z@iC_Zv!aXgtPkmeUfA}iUvI(gJ55I~v03)v>6AL9>6KnLJSNY1-#y%H?37s2h5Knm zYWwsb?Mol;n>fKO$9nb42|fEJ_eyyioN_j_=+ck#Zk}1aKPtOQ$M^Zz=Q%sCZ&O{8 z(IK_dupMI}LU(nneRAjT>yQ1+k55fIac<6ofOVIyg;IrIo|X^(XfxG3_sO*`HC*oX_eCG5mn?Jg7XS4Y8hrF76@1oOjK><5|S$}f)KFz8K=d9l!J>L8Ci9(+hqxkE7 zXK-~GmdnSQ-?g?U`*`}#XxJLg@Uf1Ymn%y1%{rxE9pB$b8{D89c22W&en?y9y@l; zec)2{c2I=F*3O*@_myP%*?nW%eaP%lmz$f~{5oLm@!-hT`ulBdsvgZ4?Dx8g+A?B> ziJww~vg6I)P!0IbGbv5&;XyvVg8K1+GpWms$HgVZcNyPhLYE0MCQpcr?GnXz-$yy} zKC`Gn_F_*uWyJ)`9EBI6T|D`{-6Ud1U!_r$l{LI=k6zC9^5R$0Q19}*H`Vf}XFA1E zRt7_L(MHQ!;>3^lQ*EJ8i?_+3IyDkrzlK-0<=PECWgun0HoAR%#H$Ue_3*V~S^iK4 z<<?t!pJd^VEQKO)j(-9JS z*IfLs@Mb)GSVH=@^tni#`2IX9qg-3GRKrg`0Ci59OsZaUjGpu{N}bWnYoR4T1EG*W z1MPzl`L$Jrnzi?RY6`M5s$q@h#WpOLdvb+D*VjD{a+T4{x7~s}u_b z&^zej3dC3KHB!AS8q9lo!+y9Pq#PT`#V3Qp5)z@3K+pRfq?)7pGM~eg9S79~z@<$W zANWZs0;uLtsu=K(kDQ7=w;>=}>S#oW+?4R!sKn?Le_Dp8kk`$WZ~O_5tniCZL1-KAGtQY_!`5Y>ni z24geJ=LgL!l{$P~(vmt$f|i7)SeEcRPFxZ-A`bN-|6^TpL58?4X_ZRqNI*DssiXr@ zm(GjCx?UzH?x|GZ6{VmjfG~P;)fdo%IwK{sI6Y}u60_poDT(u|k5P65)V%BzhvZ3VOot_~I=ZCzp?5%(_Y%B3Hyn)J5Kv z)J2VxN@b8mkSl61g3?ivxK&d4ipI$`I*6PkE{PnbAyN@g2Z_3TY$X+unHN=r)$uV$ zDJQXT2os20J_HlWWkz40P%cms0lKRwtaPwITPMI58fP zYe~^aNoev`%Ogcjq|#Ew#tXmWj7XA0Pj7bfj=Bas!T7Zk!S9m}^oL^+KXurQ)> z`798XYix1ZNz#(0l%|juAkCmdhsnvxq~)D*s8%h-3RI12*w{(2anqtBBgRL@K;W6+ z24N!256hw2STQDkdJfgPnHY;}TqB|qCV51~gpH3xSb77Wkwdkwp@WdIaRJqWf0IMG zL+b=ylS_Gfh>EOn9Ty)N8J`%328a=f#&vvTY-D^`v`10`Py)EY$S=>OoUODBzb6-_ zH8Ol*F6Coo((?`TC|~H0iMCMV8aEk+B|;syN5YJR#K;&#lhN~2@~Ad;g5lA)P6mpe zI%qAS)3f}}Jj!TgGVs6UQ_Y}q6wM@Tv5ck%h-mg?hyg(a8!JPM01+LA41w+<(3w-@ zNSqFOiRc)X-6NEc_;hU-EbpK*T6hhL`~&#?}%97!yMb z`QNZ0y-*1bQV`|@MomUxMrSmI3{<5BCR$i|Q&@snlP;m51!#5rDqy#P1VUWu^!z{h zR0sZ-e5!G07$ed&yQyg+?UIk@kg%9YNU3;-Q&eXsF`Cu5#>d5YpmPEgMcby~H=Lq8 zt!M*(@f79UM<+(FA#m`cVxkgZylZ@9bXa0!ga=v~>?tBKEqofHk{BNqo|G6B7mIPh z^7qeBEk?kWiq+B@*M!Ki2(Oc{`BK8A00O4y1(cW|W_hzM!$Goe{{DR$vO|`ibe3w~ z8pbLp88KE&0xO&jq$>J;B{G~0F~m>;LD*s_qXfdKkdK*#7dRMVNTk37rbW3bC78g^ zI!o1UjhL{os>e7rBTid#aF)bSMu`e*6yq=@5T+6XJS7n1BZgW^ARHGlDpUf288O-> zIJIsKOeh$o)ts8O0;hbpvy_3-@JG&4E=>iit{7tg3alP&kW*`rvV|D@pgOT;ov=Ys zz@iwEC~$#8F;Y;#fS6bbuYkdh$#$Z8b6~^7AWMM<`(+e(YTgPdP&F>5L|`vrC+zuO z&rx=EVnzhW(NSXsvuf1wx6V*~a=5*j|>Jk`=gj43p(iDBW_wgA}sm z51gayt*bG3+k;?=2ArpCIbcR7A0&|gtX%vIHW(BUA{a5jf5;GI6vXUbLvyRCB&%E@i8et~$ho6*f}z5(cTau|dq40WP?F_%AJZsoH}5 zH1k#9aYo4`#M5Pvx-S~Un+X^qntAB0C764IXrz^#;ik*7<@}{Q%Gp(#z$}CXaIi%G zV-UAiK}gs;{^~`_(cU05c93nXNPsW7KsoXb1(YY>DW9@+_Ki#c%PC?in-&bAf|`{wz{3=ulRV!Gvxj7|e*G z7!1as4kH+hg>EG{%*>(4UyW$gBFlln^vEb+FauH$3`QfjsfN);)XYT4QRG3}!~*fEuRLq7FT3 z7+4$vX5vgJgi#}!wJ42H!Hf`H;>XHpG@*t(YCKwtQWOjZRv3q|w5T6SB{Z@O%0ShF zSr&Oy3}!;HjtZuw85AjDFcWMp4ntiSEih634C+8*0Sf;Iyx^kNGSJQu$D@S~I%tSR zfsJOAnyO(8X*p=Efg`x4;Z7G{2@TieI6)c?0|^tHt7>AJhG}qSSTpkd@CUc7)yCI^ z8u%cf5++=(V=!7!9W@?HnkPevI6RviUgA$T~SPtDYsmH=6sMH$PT&smorlW91jcA~GpKI_W1UfR~ zKhZ2u+GS0sOLgcnNT>So(lR;?4^O4?^RPGD>Z zY3U6H4y6}rf*^hpW+LntxDRx@q#g^d7Z#8(HW)l5X0kWUbCox#MY ztuC++T?^4&xOyQb7E@1Wkj4oGn_aa2H{Wj`QW6)5V}?qrxjo* zcUG+gCLt^#^wTEP4ssPjJpqfL2haLwB0z=+jo43Gk3OS-F$1kEaT5$t8+s<9W*YiZ zVt5cU!0I$YdSVejutEgB;5-R)OGA!@5dU!XT;m55&N+HYsKi4af{4&)j%Lt3i4qZ3!s0FtO0m62qfOm1Q^@k8)rzY13)=bQ7V942vHw7z-a4AsB@3 zdl4{`7;(Y+6MiA6Pxh>8Q#8vZ?)r-uwao07@P(L49On`OWatP(b5p`l7odV zvP!YSSV&+M1ksN)D|E?K;sMNv2RSg7K}}*2UbPeuB5~xJ)d55rPJjP6rYRY!V=7#7 ziT`M`7CmT0f7KcR$q#9K%vvHSfm8s$Qhf!^Utt_7yy$pNlt z5Fn7^H-e+V8H8I%aje2t!3R=^GyyJ(2sh7wcO^mqLAsH|k_?cnB z0Z3bHu~jUDn)oCvq%rtefX{>CHcbo9O^DOa!ed3u_5mJl`#}CIxD=dgRuAbCc4$~V zLudr74G)yGEQGkkSZDxFFar+)X*^ejog@4fI1lk+%VNc~kbDt#0geKZ9>U!sdWwnu zWDlTa!IjBUt>%q(PqLCLexMcRV=6uv2}3uKu7`h4#VRh)PXz!=Mdr_nL|05 zhKvz6)mru|S4ohs69$Qe>j+{FxNc|hToo?zln+`2xj|}4s1s-tVQ5US6#S%{bi#YN zD)F1(HoN*PNVzIReB^Dh32ugQu1#<&Ry|nCbK&t0k!YD|B0U5j3TeDr(mIg8&?sNY zA$Tz&7eO%GNI_5!E)XLKfj({*01vn!@PtTT@IUg&1VkcSgyj-pAi#uo!(y8_JkK)OQ& z3;+{eKv%Dr7QVcJ!|<3C#=0mg404-M_^oBBD_TcazWJ;{bR?)!N1^K2>*gF zb#*iOn0o5XJs}M9@r7#@osWU()yKEDuTJmFvVD3QyfptmN(lN~RzhM}eB$)@$Z+solPPZ@)e^{|9hCrtAO! delta 71210 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 Zm4x1CoRVl6Z!0{>(b~GW^zrL!`+rK5H+ld7 diff --git a/ReadMe.txt b/ReadMe.txt index 36c7ce95..276ae088 100644 --- a/ReadMe.txt +++ b/ReadMe.txt @@ -1,11 +1,3 @@ -*********************************************************************** -*** *** -*** R o m W B W *** -*** *** -*** Z80/Z180 System Software *** -*** *** -*********************************************************************** - RomWBW Z80/Z180 System Software From a86411682b3ce5ada556a73e0c7ca2f0e08b4242 Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Wed, 18 Mar 2020 11:41:51 -0700 Subject: [PATCH 14/17] Documentation Updates --- Doc/GettingStarted.pdf | Bin 124276 -> 145988 bytes ReadMe.md | 328 +++++++++++++++++++++++++++++++++++++---- ReadMe.txt | 327 ++++++++++++++++++++++++++++++++++++---- 3 files changed, 597 insertions(+), 58 deletions(-) diff --git a/Doc/GettingStarted.pdf b/Doc/GettingStarted.pdf index ebd255b59b31b776569c5aa279d27cad7e99d01b..f90b8ce8315d4302ba057583edf4e086264bd0ee 100644 GIT binary patch delta 66474 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%0DY*+BmznBxqj1R^l_8()7mnkLw7u5p`s2(6hN#l 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 byBeMjIX@vJRE-H6JBO!cXE)SunA-mVAWAkg delta 48132 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 diff --git a/ReadMe.md b/ReadMe.md index b8edf341..0899e120 100644 --- a/ReadMe.md +++ b/ReadMe.md @@ -2,7 +2,7 @@ ## Z80/Z180 System Software -Version 2.9.2 of March 17, 2020 +Version 2.9.2 of March 18, 2020 Wayne Warthen @@ -268,26 +268,176 @@ While the RAM/ROM disks provide a functional system, they are not useful in the long term because you cannot save data across power cycles. They are also constrained by limited space. -If your system has working disk devices, then you should notice some -drive letters assigned at startup. The specific drive letters assigned -will depend on your system configuration. Note that there **must** be -media installed in IDE, CF, SD interfaces in order for drive letters to -be assigned at boot. +The systems supported by RomWBW all have the ability to use persistent +disk media. I am referring to all kinds of disk devices including floppy +drives, hard disks, CF Cards, and SD Cards. Some systems have disk +interfaces built-in, while others will require add-in cards. You will +need to refer to the documentation for your system. + +In the RomWBW bootup messages, you will see hardware discovery messages. +If you have a disk drive interface, you should see messages listing +device types like FD:, IDE:, PPIDE:, SD:. Additionally, you will see +messages indicating the media that has been found on the interfaces. As +an example, here are the messages you might see if you have an IDE +interface in your system with a single CF Card inserted in the primary +side of the interface: + + IDE: IO=0x80 MODE=MK4 + IDE0: 8-BIT LBA BLOCKS=0x00773800 SIZE=3815MB + IDE1: NO MEDIA + +The messages you see will vary depending on your hardware and the media +you have installed. But, they will all have the same general format as +the example above. + +Once your your system has working disk devices, you can boot an +operating system and the operating system will have access to the media. +At the boot loader prompt, select either either CP/M 2.2 or Z-System to +boot from ROM. As the operating system starts up, you should see a list +of drive letters assigned to the disk media you have installed. Here is +an example of this: + + Configuring Drives... + + A:=MD1:0 + B:=MD0:0 + C:=IDE0:0 + D:=IDE0:1 + +You will probably see mroe drive letters than this. The drive letter +assignment process is described in more detail later in this document. +Be aware that RomWBW will only assign drive letters to disk interfaces +that actually have media in them. If you do not see drive letters +assigned as expected, refer to the prior system boot messages to ensure +media has been detected in the interface. Actually, there is one +exception to this rule: floppy drives will be assigned a drive letter +regardless of whether there is any media inserted at boot. + +Notice how each drive letter refers back to a specific disk hardware +interface like IDE0. This is important as it is telling you what each +drive letter refers to. Also notice that mass storage disks (like IDE) +will normally have multiple drive letters assigned. The extra drive +letters refer to additional “slices” on the disk. The concept of slices +is also explained later in this document. + +Once you are seeing drive letters referring to your disk media, you can +follow the instructions below to begin using the disk media with the +operating system. Your disk media **must** be initialized prior to be +used. There are two ways to initialize your media for use. + +You can initialize the media in-place using your RomWBW system. This +process is described below under Disk Initialization. In this scenario, +you will need to subsequently copy any files you want to use onto the +newly initialized disk. + +Alternatively, you can use your modern Windows, Linux, or Mac computer +to copy a disk image onto the disk media. RomWBW comes with a variety of +disk images that are ready to use and have a much more complete set of +files than you will find on the ROM disk. This process is covered below +under Disk Images. + +## Disk Initialization To use a disk device, you will need to initialize the directory of the -filesystem. This is done using the CLRDIR application. For example if -your C: drive has been assigned to a storage device, you would use -`CLRDIR C:` to initialize C: and prepare it hold files. Note that CLRDIR -will prompt you for confirmation and you must respond with a **capital** -вЂY’ to confirm. Once CLDIR has completed, you can copy files onto the -drive, for example `COPY *.* C:`. - -If you are using a floppy drive, you will need to format your floppy -disk prior to use. This is only required for floppy disks, not hard -disk, CF Cards, or SD Cards, etc. To format a floppy drive, you can use -the interactive application FDU. FDU is not terribly user friendly, but -is generally documented in the file “FDU.txt” found in the Doc directory -of the distribution. +filesystem. On RomWBW, the initialization is done using the CLRDIR +application. For example if your C: drive has been assigned to a storage +device, you would use `CLRDIR C:` to initialize C: and prepare it hold +files. Note that CLRDIR will prompt you for confirmation and you must +respond with a **capital** вЂY’ to confirm. Once CLDIR has completed, you +can copy files onto the drive, for example `COPY *.* C:`. Be very +careful to pay attention to your drive letter assignments prior to +running CLRDIR to avoid accidentally wiping out a filesystem that has +data on it. + +Running CLRDIR on a disk device is roughly equivalent to running FORMAT +on MS-DOS. Note that unlike MS-DOS you do **not** partition your mass +storage device. CP/M knows nothing about disk partitions. You may notice +a partitioning application on your ROM disk (FDISK80), but this is +strictly for an advanced technique of adding an MS-DOS FAT filesystem to +your media in addition to the CP/M area. Do not use FDISK80 unless you +are specifically attempting to add an MS-DOS FAT filesystem to your +media. + +If you are using a floppy drive, you will need to physically format your +floppy disk prior to use. This is only required for floppy disks, not +hard disk, CF Cards, or SD Cards, etc. To format a floppy drive, you can +use the interactive application FDU. FDU is not terribly user friendly, +but is generally documented in the file “FDU.txt” found in the Doc +directory of the distribution. It is not necessary to run CLRDIR on a +floppy disk after physically formatting it – the directory is cleared as +part of the formatting. + +## Booting Disks + +Once you have initialized a disk device and copied your desired files +onto it, you may want to boot directly to this disk device at startup. +On CP/M filesystems, you must perform one additional step to make a disk +bootable. Specifically, you need to place a copy of the oeoprating +system on the system tracks of the disk. This is done using the +`SYSCOPY` command. Let’s say you have prepared drive C: by initializing +it with `CLRDIR` and copied some files onto it. You can now make C: +bootable by running the following command: + +`B>SYSCOPY C:=B:ZSYS.SYS` + +This command means: copy the Z-System operating system onto the system +tracks of drive C:. In this example, it is assumed that you have booted +from ROM, so B: is the ROM disk drive. Additionally, this example +assumes you want the Z-System operating system to be booted from C:. If +you want CP/M 2.2 instead, you would replace `B:ZSYS.SYS` with +`B:CPM.SYS`. Here is a full example of this process. + + B>SYSCOPY C:=B:ZSYS.SYS + + SYSCOPY v2.0 for RomWBW CP/M, 17-Feb-2020 (CP/M 2 Mode) + Copyright 2020, Wayne Warthen, GNU GPL v3 + + Transfer system image from B:ZSYS.SYS to C: (Y/N)? Y + Reading image... Writing image... Done + +After successfully putting the operating system on the disk, you can +restart your system. When you get to the boot loader, notice the line +starting with “Disk:”. This line lists the disk devices that you can +choose to boot directly. + +You will notice that you do not have an option to boot a drive letter +here (like C:). This is because the operating system is not yet loaded. +When you ran `SYSCOPY` previously, remember that C: was assigned to +IDE0:0 which means device IDE0, slice 0. So, to boot the disk that you +just setup with SYSCOPY, you would choose option 1. You will then be +prompted for the slice on IDE0 that you want to boot. For now, just +press enter to choose slice 0. Once you are familiar with slices, you +can `SYSCOPY` and boot alternate slices. Here is what you would see when +booting to a disk device: + + MARK IV Boot Loader + + ROM: (M)onitor (C)P/M (Z)-System (F)orth (B)ASIC (T)-BASIC (P)LAY (U)SER ROM + Disk: (0)MD1 (1)MD0 (2)IDE0 (3)IDE1 + + Boot Selection? 2 Slice(0-9)[0]? + + Booting Disk Unit 2, Slice 0... + + Reading disk information... + Loc=D000 End=FE00 Ent=E600 Label=Unlabeled Drive + + Loading... + +Following this, you would see the normal operating system startup +messages. However, your operating system prompt will be `A>` and when +you look at the drive letter assignments, you should see that A: has +been assigned to the disk you selected to boot. + +If you receive the error message “Disk not bootable\!”, you have either +failed to properly run `SYSCOPY` on the target disk or you have selected +the wrong disk/slice. + +Note that although MD1 (RAM disk) and MD0 (ROM disk) drives are listed +in the Disk boot line, they are not currently “bootable” disks because +they have no system tracks on them. Attempting to boot to one of them, +will fail with a “Disk not bootable\!” error message and return to the +loader prompt. ## Disk Images @@ -297,7 +447,8 @@ It is generally easier to use these disk images instead of copying all the files over using XModem. You use your modern computer (Windows, Linux, MacOS) to place the disk image onto the disk media, then just move the media over to your system. In this scenario you **do not** run -CLRDIR on the directory of the drive letter(s). +`CLRDIR` or `SYSCOPY` on the drive(s). The directory prepared and the +disk is already bootable, if it is an operating system. To copy the disk image files onto your actual media (floppy disk, CF Card, SD Card, etc.), you need to use an image writing utility on your @@ -341,11 +492,11 @@ This is the layout of the hd\_combo disk image: | Slice | Description | | ------- | ---------------------------- | -| Slice 0 | DRI CP/M 2.2 bootable disk | -| Slice 1 | ZSDOS 1.1 bootable disk | -| Slice 2 | NZCOM bootable disk | -| Slice 3 | DRI CP/M 3 bootable disk | -| Slice 4 | ZPM3 bootable disk | +| Slice 0 | DRI CP/M 2.2 boot disk | +| Slice 1 | ZSDOS 1.1 boot disk | +| Slice 2 | NZCOM boot disk | +| Slice 3 | DRI CP/M 3 boot disk | +| Slice 4 | ZPM3 boot disk | | Slice 5 | WordStar v4 application disk | Note that unlike the ROM firmware, you do **not** need to choose a disk @@ -356,10 +507,10 @@ system and put it in a different system. The only constraint is that the applications on the disk media must be up to date with the firmware on the system being used. -All of the disk images that indicate they are bootable will boot from -disk as is. You do not need to run `SYSCOPY` on them to make them -bootable. However, if you upgrade your ROM, you should use `SYSCOPY` to -update the system tracks. +All of the disk images that indicate they are bootable (boot disk) will +boot from disk as is. You do not need to run `SYSCOPY` on them to make +them bootable. However, if you upgrade your ROM, you should use +`SYSCOPY` to update the system tracks. # General Usage @@ -619,6 +770,125 @@ Note that Phillip Stevens has also ported FreeRTOS to run under RomWBW. FreeRTOS is not provided in the RomWBW distribution, but is available from Phillip. +# Transferring Files + +Transferring files between your modern computer and your RomWBW system +can be achieved in a variety of ways. The most common of these are +described below. All of these have a certain degree of complexity and I +encourage new users to use the available community forums to seek +assistance as needed. + +## Serial Port Transfers + +RomWBW provides an serial file transfer program called XModem that has +been adapted to run under RomWBW hardware. The program is called `XM` +and is on your ROM disk as well as all of the pre-built disk images. + +You can type `XM` by itself to get usage information. In general, you +will run `XM` with parameters to indicate you want to send or receive a +file on your RomWBW system. Then, you will use your modern computers +terminal program to complete the process. + +The `XM` application generally tries to detect the hardware you are +using and adapt to it. However, you must ensure that you have a +realiable serial connection. You must also ensure that the speed of the +connection is not too fast for XModem to handle. Alternatively, you can +ensure that hardware flow control is working properly. + +There is an odd interaction between XModem and partner terminal programs +that can occur. Essentially, after launching `XM`, you must start the +protocol on your modern computer fairly quickly (usually about 20 +seconds or so). So, if you do not pick a file on your modern computer +quickly enough, you will find that the transfer completes about 16K, +then hangs. The interaction that casuses this is beyond the scope of +this document. + +## Disk Image Transfers + +It is possible to pass disk images between your RomWBW system and your +modern computer. This assumes you have an appropriate media slot on your +modern computer for the media you want to use (CF Card, SD Card, or +floppy drive). + +The general process to get files from your modern computer to a RomWBW +computer is: + +1. Use `cpmtools` on your modern computer to create a RomWBW CP/M + filesystem image. +2. Insert your RomWBW media (CF Card, SD Card, or floppy disk) in your + modern computer. +3. Use a disk imaging tool to copy the RomWBW filesystem image onto the + media. +4. Move the media back to the RomWBW computer. + +This process is a little complicated, but it has the benefit of allowing +you to get a lot of files over to your RomWBW system quickly and with +little change of corruption. + +The process can be run in reverse to get files from your RomWBW computer +to a modern computer. + +The exact use of these tools is a bit too much for this document, but +the tools are all included in the RomWBW distribution along with usage +documents. + +Note that the build scripts for RomWBW create the default disk images +supplied with RomWBW. It is relatively easy to customize the contents of +the disk images that are part of RomWBW. This is described in more +detail in the Source\\Images driectory of the distribution. + +## FAT Filesystem Transfers + +RomWBW provides a mechanism that allows it to read and write files on an +FAT formatted disk. This means that you can generally use your modern +computer to make an SD Card or CF Card with a standard FAT32 filesystem +on it, then place that media in your RomWBW computer and read/write the +files. + +When formatting the media on your modern computer, but sure to pick the +FAT filesystem. NTFS and other filesystems will not work. + +On your RomWBW computer you can use the `FAT` application to access the +FAT media. The `FAT` application allows you to read files, write files, +list a directory, and erase files on the FAT media. It can handle +subdirectories as well. It will only see 8.3 character filenames +however. Longer filenames will show up as a truncated version. + +The `FAT` application is not on your ROM disk because it is too large to +fit. You will find it on all of the pre-built disk images as well as in +the Binary\\Apps directory of the distribution. + +For advanced users, it is possible to create a hybrid disk that contains +CP/M slices at the beginning and a FAT filesystem after. Such a hybrid +disk can be used to boot an operating system and still have access to +FAT files on the FAT portion of the disk. David Reese has prepared a +document describing how to do this. It is called +“SC126\_How-To\_No\_2\_Preparing\_an\_SD\_Card\_for\_Use\_with\_SC126\_Rev\_1-5.pdf” +and can be found in the Doc\\Contrib directory of the distribution. + +# Startup Command Processing + +Each of the operating system supported by RomWBW provide a mechanism to +run commands at boot. This is similar to the AUTOEXEC.BAT files from +MS-DOS. + +With the exception of ZPM3, all operating system will look for a file +called `PROFILE.SUB` on the system drive at boot. If it is found, it +will be processed as a standard CP/M submit file. You can read about the +use of the SUBMIT facility in the CP/M manuals included in the RomWBW +distribution. + +In the case of ZPM3, the file called `STARTZPM.COM` will be run at boot. +To customize this file, you use the ZCPR ALIAS facility. You will need +to refer to ZCPR documentation for more information on the ALIAS +facility. + +Note that automatic startup processing generally requires booting to a +disk drive. Since the ROM disk is not writable, there is no simple way +to add/edit a `PROFILE.SUB` file there. If you want to customize your +ROM and add a `PROFILE.SUB` file to the ROM Disk, it will work, but is a +lot harder than using a boot disk. + # ROM Customization The pre-built ROM images are configured for the basic capabilities of diff --git a/ReadMe.txt b/ReadMe.txt index 276ae088..ff28b03f 100644 --- a/ReadMe.txt +++ b/ReadMe.txt @@ -2,7 +2,7 @@ RomWBW Z80/Z180 System Software -Version 2.9.2 of March 17, 2020 +Version 2.9.2 of March 18, 2020 Wayne Warthen wwarthen@gmail.com @@ -282,26 +282,175 @@ While the RAM/ROM disks provide a functional system, they are not useful in the long term because you cannot save data across power cycles. They are also constrained by limited space. -If your system has working disk devices, then you should notice some -drive letters assigned at startup. The specific drive letters assigned -will depend on your system configuration. Note that there must be media -installed in IDE, CF, SD interfaces in order for drive letters to be -assigned at boot. +The systems supported by RomWBW all have the ability to use persistent +disk media. I am referring to all kinds of disk devices including floppy +drives, hard disks, CF Cards, and SD Cards. Some systems have disk +interfaces built-in, while others will require add-in cards. You will +need to refer to the documentation for your system. + +In the RomWBW bootup messages, you will see hardware discovery messages. +If you have a disk drive interface, you should see messages listing +device types like FD:, IDE:, PPIDE:, SD:. Additionally, you will see +messages indicating the media that has been found on the interfaces. As +an example, here are the messages you might see if you have an IDE +interface in your system with a single CF Card inserted in the primary +side of the interface: + + IDE: IO=0x80 MODE=MK4 + IDE0: 8-BIT LBA BLOCKS=0x00773800 SIZE=3815MB + IDE1: NO MEDIA + +The messages you see will vary depending on your hardware and the media +you have installed. But, they will all have the same general format as +the example above. + +Once your your system has working disk devices, you can boot an +operating system and the operating system will have access to the media. +At the boot loader prompt, select either either CP/M 2.2 or Z-System to +boot from ROM. As the operating system starts up, you should see a list +of drive letters assigned to the disk media you have installed. Here is +an example of this: + + Configuring Drives... + + A:=MD1:0 + B:=MD0:0 + C:=IDE0:0 + D:=IDE0:1 + +You will probably see mroe drive letters than this. The drive letter +assignment process is described in more detail later in this document. +Be aware that RomWBW will only assign drive letters to disk interfaces +that actually have media in them. If you do not see drive letters +assigned as expected, refer to the prior system boot messages to ensure +media has been detected in the interface. Actually, there is one +exception to this rule: floppy drives will be assigned a drive letter +regardless of whether there is any media inserted at boot. + +Notice how each drive letter refers back to a specific disk hardware +interface like IDE0. This is important as it is telling you what each +drive letter refers to. Also notice that mass storage disks (like IDE) +will normally have multiple drive letters assigned. The extra drive +letters refer to additional “slices” on the disk. The concept of slices +is also explained later in this document. + +Once you are seeing drive letters referring to your disk media, you can +follow the instructions below to begin using the disk media with the +operating system. Your disk media must be initialized prior to be used. +There are two ways to initialize your media for use. + +You can initialize the media in-place using your RomWBW system. This +process is described below under Disk Initialization. In this scenario, +you will need to subsequently copy any files you want to use onto the +newly initialized disk. + +Alternatively, you can use your modern Windows, Linux, or Mac computer +to copy a disk image onto the disk media. RomWBW comes with a variety of +disk images that are ready to use and have a much more complete set of +files than you will find on the ROM disk. This process is covered below +under Disk Images. + +Disk Initialization To use a disk device, you will need to initialize the directory of the -filesystem. This is done using the CLRDIR application. For example if -your C: drive has been assigned to a storage device, you would use -CLRDIR C: to initialize C: and prepare it hold files. Note that CLRDIR -will prompt you for confirmation and you must respond with a capital вЂY’ -to confirm. Once CLDIR has completed, you can copy files onto the drive, -for example COPY *.* C:. - -If you are using a floppy drive, you will need to format your floppy -disk prior to use. This is only required for floppy disks, not hard -disk, CF Cards, or SD Cards, etc. To format a floppy drive, you can use -the interactive application FDU. FDU is not terribly user friendly, but -is generally documented in the file “FDU.txt” found in the Doc directory -of the distribution. +filesystem. On RomWBW, the initialization is done using the CLRDIR +application. For example if your C: drive has been assigned to a storage +device, you would use CLRDIR C: to initialize C: and prepare it hold +files. Note that CLRDIR will prompt you for confirmation and you must +respond with a capital вЂY’ to confirm. Once CLDIR has completed, you can +copy files onto the drive, for example COPY *.* C:. Be very careful to +pay attention to your drive letter assignments prior to running CLRDIR +to avoid accidentally wiping out a filesystem that has data on it. + +Running CLRDIR on a disk device is roughly equivalent to running FORMAT +on MS-DOS. Note that unlike MS-DOS you do not partition your mass +storage device. CP/M knows nothing about disk partitions. You may notice +a partitioning application on your ROM disk (FDISK80), but this is +strictly for an advanced technique of adding an MS-DOS FAT filesystem to +your media in addition to the CP/M area. Do not use FDISK80 unless you +are specifically attempting to add an MS-DOS FAT filesystem to your +media. + +If you are using a floppy drive, you will need to physically format your +floppy disk prior to use. This is only required for floppy disks, not +hard disk, CF Cards, or SD Cards, etc. To format a floppy drive, you can +use the interactive application FDU. FDU is not terribly user friendly, +but is generally documented in the file “FDU.txt” found in the Doc +directory of the distribution. It is not necessary to run CLRDIR on a +floppy disk after physically formatting it – the directory is cleared as +part of the formatting. + +Booting Disks + +Once you have initialized a disk device and copied your desired files +onto it, you may want to boot directly to this disk device at startup. +On CP/M filesystems, you must perform one additional step to make a disk +bootable. Specifically, you need to place a copy of the oeoprating +system on the system tracks of the disk. This is done using the SYSCOPY +command. Let’s say you have prepared drive C: by initializing it with +CLRDIR and copied some files onto it. You can now make C: bootable by +running the following command: + +B>SYSCOPY C:=B:ZSYS.SYS + +This command means: copy the Z-System operating system onto the system +tracks of drive C:. In this example, it is assumed that you have booted +from ROM, so B: is the ROM disk drive. Additionally, this example +assumes you want the Z-System operating system to be booted from C:. If +you want CP/M 2.2 instead, you would replace B:ZSYS.SYS with B:CPM.SYS. +Here is a full example of this process. + + B>SYSCOPY C:=B:ZSYS.SYS + + SYSCOPY v2.0 for RomWBW CP/M, 17-Feb-2020 (CP/M 2 Mode) + Copyright 2020, Wayne Warthen, GNU GPL v3 + + Transfer system image from B:ZSYS.SYS to C: (Y/N)? Y + Reading image... Writing image... Done + +After successfully putting the operating system on the disk, you can +restart your system. When you get to the boot loader, notice the line +starting with “Disk:”. This line lists the disk devices that you can +choose to boot directly. + +You will notice that you do not have an option to boot a drive letter +here (like C:). This is because the operating system is not yet loaded. +When you ran SYSCOPY previously, remember that C: was assigned to IDE0:0 +which means device IDE0, slice 0. So, to boot the disk that you just +setup with SYSCOPY, you would choose option 1. You will then be prompted +for the slice on IDE0 that you want to boot. For now, just press enter +to choose slice 0. Once you are familiar with slices, you can SYSCOPY +and boot alternate slices. Here is what you would see when booting to a +disk device: + + MARK IV Boot Loader + + ROM: (M)onitor (C)P/M (Z)-System (F)orth (B)ASIC (T)-BASIC (P)LAY (U)SER ROM + Disk: (0)MD1 (1)MD0 (2)IDE0 (3)IDE1 + + Boot Selection? 2 Slice(0-9)[0]? + + Booting Disk Unit 2, Slice 0... + + Reading disk information... + Loc=D000 End=FE00 Ent=E600 Label=Unlabeled Drive + + Loading... + +Following this, you would see the normal operating system startup +messages. However, your operating system prompt will be A> and when you +look at the drive letter assignments, you should see that A: has been +assigned to the disk you selected to boot. + +If you receive the error message “Disk not bootable!”, you have either +failed to properly run SYSCOPY on the target disk or you have selected +the wrong disk/slice. + +Note that although MD1 (RAM disk) and MD0 (ROM disk) drives are listed +in the Disk boot line, they are not currently “bootable” disks because +they have no system tracks on them. Attempting to boot to one of them, +will fail with a “Disk not bootable!” error message and return to the +loader prompt. Disk Images @@ -311,7 +460,8 @@ It is generally easier to use these disk images instead of copying all the files over using XModem. You use your modern computer (Windows, Linux, MacOS) to place the disk image onto the disk media, then just move the media over to your system. In this scenario you do not run -CLRDIR on the directory of the drive letter(s). +CLRDIR or SYSCOPY on the drive(s). The directory prepared and the disk +is already bootable, if it is an operating system. To copy the disk image files onto your actual media (floppy disk, CF Card, SD Card, etc.), you need to use an image writing utility on your @@ -355,11 +505,11 @@ This is the layout of the hd_combo disk image: Slice Description --------- ------------------------------ - Slice 0 DRI CP/M 2.2 bootable disk - Slice 1 ZSDOS 1.1 bootable disk - Slice 2 NZCOM bootable disk - Slice 3 DRI CP/M 3 bootable disk - Slice 4 ZPM3 bootable disk + Slice 0 DRI CP/M 2.2 boot disk + Slice 1 ZSDOS 1.1 boot disk + Slice 2 NZCOM boot disk + Slice 3 DRI CP/M 3 boot disk + Slice 4 ZPM3 boot disk Slice 5 WordStar v4 application disk Note that unlike the ROM firmware, you do not need to choose a disk @@ -370,10 +520,10 @@ system and put it in a different system. The only constraint is that the applications on the disk media must be up to date with the firmware on the system being used. -All of the disk images that indicate they are bootable will boot from -disk as is. You do not need to run SYSCOPY on them to make them -bootable. However, if you upgrade your ROM, you should use SYSCOPY to -update the system tracks. +All of the disk images that indicate they are bootable (boot disk) will +boot from disk as is. You do not need to run SYSCOPY on them to make +them bootable. However, if you upgrade your ROM, you should use SYSCOPY +to update the system tracks. General Usage @@ -649,6 +799,125 @@ Note that Phillip Stevens has also ported FreeRTOS to run under RomWBW. FreeRTOS is not provided in the RomWBW distribution, but is available from Phillip. +Transferring Files + +Transferring files between your modern computer and your RomWBW system +can be achieved in a variety of ways. The most common of these are +described below. All of these have a certain degree of complexity and I +encourage new users to use the available community forums to seek +assistance as needed. + +Serial Port Transfers + +RomWBW provides an serial file transfer program called XModem that has +been adapted to run under RomWBW hardware. The program is called XM and +is on your ROM disk as well as all of the pre-built disk images. + +You can type XM by itself to get usage information. In general, you will +run XM with parameters to indicate you want to send or receive a file on +your RomWBW system. Then, you will use your modern computers terminal +program to complete the process. + +The XM application generally tries to detect the hardware you are using +and adapt to it. However, you must ensure that you have a realiable +serial connection. You must also ensure that the speed of the connection +is not too fast for XModem to handle. Alternatively, you can ensure that +hardware flow control is working properly. + +There is an odd interaction between XModem and partner terminal programs +that can occur. Essentially, after launching XM, you must start the +protocol on your modern computer fairly quickly (usually about 20 +seconds or so). So, if you do not pick a file on your modern computer +quickly enough, you will find that the transfer completes about 16K, +then hangs. The interaction that casuses this is beyond the scope of +this document. + +Disk Image Transfers + +It is possible to pass disk images between your RomWBW system and your +modern computer. This assumes you have an appropriate media slot on your +modern computer for the media you want to use (CF Card, SD Card, or +floppy drive). + +The general process to get files from your modern computer to a RomWBW +computer is: + +1. Use cpmtools on your modern computer to create a RomWBW CP/M + filesystem image. +2. Insert your RomWBW media (CF Card, SD Card, or floppy disk) in your + modern computer. +3. Use a disk imaging tool to copy the RomWBW filesystem image onto the + media. +4. Move the media back to the RomWBW computer. + +This process is a little complicated, but it has the benefit of allowing +you to get a lot of files over to your RomWBW system quickly and with +little change of corruption. + +The process can be run in reverse to get files from your RomWBW computer +to a modern computer. + +The exact use of these tools is a bit too much for this document, but +the tools are all included in the RomWBW distribution along with usage +documents. + +Note that the build scripts for RomWBW create the default disk images +supplied with RomWBW. It is relatively easy to customize the contents of +the disk images that are part of RomWBW. This is described in more +detail in the Source\Images driectory of the distribution. + +FAT Filesystem Transfers + +RomWBW provides a mechanism that allows it to read and write files on an +FAT formatted disk. This means that you can generally use your modern +computer to make an SD Card or CF Card with a standard FAT32 filesystem +on it, then place that media in your RomWBW computer and read/write the +files. + +When formatting the media on your modern computer, but sure to pick the +FAT filesystem. NTFS and other filesystems will not work. + +On your RomWBW computer you can use the FAT application to access the +FAT media. The FAT application allows you to read files, write files, +list a directory, and erase files on the FAT media. It can handle +subdirectories as well. It will only see 8.3 character filenames +however. Longer filenames will show up as a truncated version. + +The FAT application is not on your ROM disk because it is too large to +fit. You will find it on all of the pre-built disk images as well as in +the Binary\Apps directory of the distribution. + +For advanced users, it is possible to create a hybrid disk that contains +CP/M slices at the beginning and a FAT filesystem after. Such a hybrid +disk can be used to boot an operating system and still have access to +FAT files on the FAT portion of the disk. David Reese has prepared a +document describing how to do this. It is called +“SC126_How-To_No_2_Preparing_an_SD_Card_for_Use_with_SC126_Rev_1-5.pdf” +and can be found in the Doc\Contrib directory of the distribution. + +Startup Command Processing + +Each of the operating system supported by RomWBW provide a mechanism to +run commands at boot. This is similar to the AUTOEXEC.BAT files from +MS-DOS. + +With the exception of ZPM3, all operating system will look for a file +called PROFILE.SUB on the system drive at boot. If it is found, it will +be processed as a standard CP/M submit file. You can read about the use +of the SUBMIT facility in the CP/M manuals included in the RomWBW +distribution. + +In the case of ZPM3, the file called STARTZPM.COM will be run at boot. +To customize this file, you use the ZCPR ALIAS facility. You will need +to refer to ZCPR documentation for more information on the ALIAS +facility. + +Note that automatic startup processing generally requires booting to a +disk drive. Since the ROM disk is not writable, there is no simple way +to add/edit a PROFILE.SUB file there. If you want to customize your ROM +and add a PROFILE.SUB file to the ROM Disk, it will work, but is a lot +harder than using a boot disk. + ROM Customization The pre-built ROM images are configured for the basic capabilities of From 9a19ae21aabc2a4f28bed97b812854ba9e33c9bc Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Wed, 18 Mar 2020 15:31:37 -0700 Subject: [PATCH 15/17] Documentation Updates --- Doc/RomWBW Architecture.pdf | Bin 499960 -> 369335 bytes ...Started.pdf => RomWBW Getting Started.pdf} | Bin 145988 -> 145988 bytes Source/BuildDoc.cmd | 4 - Source/Doc/Architecture.md | 1674 +++++++++++++++++ Source/Doc/Build.cmd | 6 - Source/Doc/Build.docx | Bin 22239 -> 0 bytes Source/Doc/Clean.cmd | 6 - Source/Doc/GettingStarted.md | 547 ++++++ Source/Doc/Graphics/Bank Switched Memory.pdf | Bin 0 -> 85522 bytes Source/Doc/Graphics/Bank Switched Memory.png | Bin 0 -> 64226 bytes .../{ => Graphics}/Bank Switched Memory.vsd | Bin .../Character Emulation Video Services.vsd | Bin .../Character Emulation Video Services.pdf | Bin 0 -> 68584 bytes .../Character Emulation Video Services.png | Bin 0 -> 58891 bytes .../Doc/{ => Graphics}/Hard Disk Anatomy.vsd | Bin Source/Doc/Graphics/Logo.pdf | Bin 0 -> 5672 bytes .../Logo.png | Bin Source/Doc/Graphics/Logo.svg | 69 + Source/Doc/{ => Graphics}/WBW.vsdx | Bin Source/Doc/RomWBW Architecture.docx | Bin 261840 -> 0 bytes Source/Doc/RomWBW System Guide/Build.cmd | 19 - Source/Doc/RomWBW System Guide/Clean.cmd | 9 - Source/Doc/RomWBW System Guide/Generate.cmd | 4 - Source/Doc/RomWBW System Guide/Main.ltx | 790 -------- Source/Doc/RomWBW User Guide/BoardNotes.ltx | 20 - Source/Doc/RomWBW User Guide/Build.cmd | 19 - Source/Doc/RomWBW User Guide/Clean.cmd | 9 - .../Doc/RomWBW User Guide/Customization.ltx | 12 - Source/Doc/RomWBW User Guide/DiskUsage.ltx | 15 - Source/Doc/RomWBW User Guide/Features.ltx | 12 - .../Doc/RomWBW User Guide/FormatSamples.ltx | 83 - Source/Doc/RomWBW User Guide/GFDL.ltx | 481 ----- Source/Doc/RomWBW User Guide/GPL.ltx | 733 -------- Source/Doc/RomWBW User Guide/Generate.cmd | 4 - .../Doc/RomWBW User Guide/GettingStarted.ltx | 251 --- Source/Doc/RomWBW User Guide/Licensing.ltx | 5 - Source/Doc/RomWBW User Guide/Logo.png | Bin 4630 -> 0 bytes Source/Doc/RomWBW User Guide/Main.ltx | 192 -- .../RomWBW User Guide/OperatingSystems.ltx | 15 - Source/Doc/RomWBW User Guide/Overview.ltx | 272 --- .../Doc/RomWBW User Guide/SystemMonitor.ltx | 7 - Source/Doc/RomWBW User Guide/x - Copy (8).ltx | 7 - Source/Doc/RomWBW User Guide/x - Copy.ltx | 7 - Source/Doc/RomWBW User Guide/x.ltx | 7 - Source/Doc/WBW.png | Bin 4630 -> 0 bytes Source/Doc/ZCPR Manual/Build.cmd | 19 - Source/Doc/ZCPR Manual/Clean.cmd | 9 - Source/ReadMe.txt | 5 - 48 files changed, 2290 insertions(+), 3022 deletions(-) rename Doc/{GettingStarted.pdf => RomWBW Getting Started.pdf} (99%) delete mode 100644 Source/BuildDoc.cmd create mode 100644 Source/Doc/Architecture.md delete mode 100644 Source/Doc/Build.cmd delete mode 100644 Source/Doc/Build.docx delete mode 100644 Source/Doc/Clean.cmd create mode 100644 Source/Doc/GettingStarted.md create mode 100644 Source/Doc/Graphics/Bank Switched Memory.pdf create mode 100644 Source/Doc/Graphics/Bank Switched Memory.png rename Source/Doc/{ => Graphics}/Bank Switched Memory.vsd (100%) rename Source/Doc/{ => Graphics}/Character Emulation Video Services.vsd (100%) create mode 100644 Source/Doc/Graphics/Character Emulation Video Services.pdf create mode 100644 Source/Doc/Graphics/Character Emulation Video Services.png rename Source/Doc/{ => Graphics}/Hard Disk Anatomy.vsd (100%) create mode 100644 Source/Doc/Graphics/Logo.pdf rename Source/Doc/{RomWBW System Guide => Graphics}/Logo.png (100%) create mode 100644 Source/Doc/Graphics/Logo.svg rename Source/Doc/{ => Graphics}/WBW.vsdx (100%) delete mode 100644 Source/Doc/RomWBW Architecture.docx delete mode 100644 Source/Doc/RomWBW System Guide/Build.cmd delete mode 100644 Source/Doc/RomWBW System Guide/Clean.cmd delete mode 100644 Source/Doc/RomWBW System Guide/Generate.cmd delete mode 100644 Source/Doc/RomWBW System Guide/Main.ltx delete mode 100644 Source/Doc/RomWBW User Guide/BoardNotes.ltx delete mode 100644 Source/Doc/RomWBW User Guide/Build.cmd delete mode 100644 Source/Doc/RomWBW User Guide/Clean.cmd delete mode 100644 Source/Doc/RomWBW User Guide/Customization.ltx delete mode 100644 Source/Doc/RomWBW User Guide/DiskUsage.ltx delete mode 100644 Source/Doc/RomWBW User Guide/Features.ltx delete mode 100644 Source/Doc/RomWBW User Guide/FormatSamples.ltx delete mode 100644 Source/Doc/RomWBW User Guide/GFDL.ltx delete mode 100644 Source/Doc/RomWBW User Guide/GPL.ltx delete mode 100644 Source/Doc/RomWBW User Guide/Generate.cmd delete mode 100644 Source/Doc/RomWBW User Guide/GettingStarted.ltx delete mode 100644 Source/Doc/RomWBW User Guide/Licensing.ltx delete mode 100644 Source/Doc/RomWBW User Guide/Logo.png delete mode 100644 Source/Doc/RomWBW User Guide/Main.ltx delete mode 100644 Source/Doc/RomWBW User Guide/OperatingSystems.ltx delete mode 100644 Source/Doc/RomWBW User Guide/Overview.ltx delete mode 100644 Source/Doc/RomWBW User Guide/SystemMonitor.ltx delete mode 100644 Source/Doc/RomWBW User Guide/x - Copy (8).ltx delete mode 100644 Source/Doc/RomWBW User Guide/x - Copy.ltx delete mode 100644 Source/Doc/RomWBW User Guide/x.ltx delete mode 100644 Source/Doc/WBW.png delete mode 100644 Source/Doc/ZCPR Manual/Build.cmd delete mode 100644 Source/Doc/ZCPR Manual/Clean.cmd diff --git a/Doc/RomWBW Architecture.pdf b/Doc/RomWBW Architecture.pdf index 85c847ffb18673a2768ca42facabb1034bc1cbc1..9cc8f5761e5b9c209ec59656166e2877db8ba6ba 100644 GIT binary patch literal 369335 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 Jt8Z`4{s%=iS8M

    gukck`)wY1TsO;QK>3mf6!5Z02Y9i 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

    wRZBsIl@I?`hlA2s`0^3c-g8WrHHArM1JA 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

    K9C31SzS!aaSC9*8mK*pIIM+*D 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 z

    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%0Db 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 DKm8!p delta 132 zcmX@|h2zKF*31mb2BnCFf%rHadtB_F||{$A)sWsniZ2A E06uRZp#T5? diff --git a/Source/BuildDoc.cmd b/Source/BuildDoc.cmd deleted file mode 100644 index f2683b30..00000000 --- a/Source/BuildDoc.cmd +++ /dev/null @@ -1,4 +0,0 @@ -@echo off -setlocal - -setlocal & cd Doc && call Build || exit /b 1 & endlocal \ No newline at end of file diff --git a/Source/Doc/Architecture.md b/Source/Doc/Architecture.md new file mode 100644 index 00000000..d9c0e426 --- /dev/null +++ b/Source/Doc/Architecture.md @@ -0,0 +1,1674 @@ +!include(Common.inc) +!def(name)(Architecture) +--- +title: RomWBW !name +author: !author (mailto:!authmail) +date: !date +institution: !orgname +documentclass: book +toc: true +toc-depth: 1 +numbersections: true +secnumdepth: 1 +classoption: +- oneside +papersize: letter +fontsize: 12pt +graphics: yes +fontfamily: helvet +# fontfamilyoptions: scaled +geometry: +- top=1in +- bottom=1in +- left=1in +- right=1in +# - showframe +# - pass +linestretch: 1.25 +colorlinks: true +#pagestyle: empty +header-includes: +- \setlength{\headheight}{15pt} +- | + ```{=latex} + \usepackage{fancyhdr} + \usepackage{xcolor} + \usepackage{xhfill} + \renewcommand*{\familydefault}{\sfdefault} + \renewcommand{\bfdefault}{b} + \renewcommand{\contentsname}{Table of Contents} + \renewcommand{\maketitle}{ + \begin{titlepage} + \centering + \par + \vspace*{0pt} + \includegraphics[width=\paperwidth]{Graphics/Logo.pdf} \par + \vfill + \raggedleft + {\scshape \bfseries \fontsize{48pt}{56pt} \selectfont RomWBW \par} + {\bfseries \fontsize{32pt}{36pt} \selectfont !name \par} + \vspace{24pt} + {\huge Version !ver \\ !date \par} + \vspace{24pt} + {\large \itshape !orgname \\ \href{http://!orgurl}{!orgurl} \par} + \vspace{12pt} + {\large \itshape !author \\ \href{mailto:authmail}{!authmail} \par} + \end{titlepage} + } + \pagestyle{empty} + ``` +include-before: +- \renewcommand{\chaptername}{Section} +- | + ```{=latex} + \pagestyle{fancyplain} + \fancyhf{} + \lfoot{\small RetroBrew Computing Group ~~ {\xrfill[3pt]{1pt}[cyan]} ~~ \thepage} + \pagenumbering{roman} + ``` +--- + +```{=latex} +\clearpage +\pagenumbering{arabic} +\lhead{\fancyplain{}{\nouppercase{\footnotesize \bfseries \leftmark \hfill RomWBW !name}}} +``` + +Overview +======== + +RomWBW provides a complete firmware package for all of the Z80 and Z180 +based systems that are available in the RetroBrew Computers Community +(see +[http://www.retrobrewcomputers.org](http://www.retrobrewcomputers.org/)) +as well as support for the RC2014 platform. Each of these systems +provides for a fairly large ROM memory (typically, 512KB or more). +RomWBW allows you to configure and build appropriate contents for such a +ROM. + +Typically, a computer will contain a small ROM that contains the BIOS +(Basic Input/Output System) functions as well as code to start the +system by booting an operating system from a disk. Since the RetroBrew +Computers Projects provide a large ROM space, RomWBW provides a much +more comprehensive software package. In fact, it is entirely possible to +run a fully functioning RetroBrew Computers System with nothing but the +ROM. + +RomWBW firmware includes: + +- System startup code (bootstrap) + +- A basic system/debug monitor + +- HBIOS (Hardware BIOS) providing support for the vast majority of + RetroBrew Computers I/O components + +- A complete operating system (either CP/M 2.2 or ZSDOS 1.1) + +- A built-in CP/M filesystem containing the basic applications and + utilities for the operating system and hardware being used + +It is appropriate to note that much of the code and components that make +up a complete RomWBW package are derived from pre-existing work. Most +notably, the imbedded operating system is simply a ROM-based copy of +generic CP/M or ZSDOS. Much of the hardware support code was originally +produced by other members of the RetroBrew Computers Community. + +The remainder of this document will focus on the HBIOS portion of the +ROM. HBIOS contains the vast majority of the custom-developed code for +the RetroBrew Computers hardware platforms. It provides a formal, +structured interface that allows the operating system to be hosted with +relative ease. + +Background +========== + +The Z80 CPU architecture has a limited, 64K address range. In general, +this address space must accommodate a running application, disk +operating system, and hardware support code. + +All RetroBrew Computers Z80 CPU platforms provide a physical address +space that is much larger than the CPU address space (typically 512K or +1MB physical RAM). This additional memory can be made available to the +CPU using a technique called bank switching. To achieve this, the +physical memory is divided up into chunks (banks) of 32K each. A +designated area of the CPU's 64K address space is then reserved to "map" +any of the physical memory chunks. You can think of this as a window +that can be adjusted to view portions of the physical memory in 32K +blocks. In the case of RetroBrew Computers platforms, the lower 32K of +the CPU address space is used for this purpose (the window). The upper +32K of CPU address space is assigned a fixed 32K area of physical memory +that never changes. The lower 32K can be "mapped" on the fly to any of +the 32K banks of physical memory at a time. The only constraint is that +the CPU cannot be executing code in the lower 32K of CPU address space +at the time that a bank switch is performed. + +By cleverly utilizing the pages of physical RAM for specific purposes +and swapping in the correct page when needed, it is possible to utilize +substantially more than 64K of RAM. Because the RetroBrew Computers +Project has now produced a very large variety of hardware, it has become +extremely important to implement a bank switched solution to accommodate +the maximum range of hardware devices and desired functionality. + +General Design Strategy +======================= + +The design goal is to locate as much of the hardware dependent code as +possible out of normal 64KB CP/M address space and into a bank switched +area of memory. A very small code shim (proxy) is located in the top 512 +bytes of CPU memory. This proxy is responsible for redirecting all +hardware BIOS (HBIOS) calls by swapping the "driver code" bank of +physical RAM into the lower 32K and completing the request. The +operating system is unaware this has occurred. As control is returned to +the operating system, the lower 32KB of memory is switched back to the +original memory bank. + +HBIOS is completely agnostic with respect to the operating system (it +does not know or care what operating system is using it). The operating +system makes simple calls to HBIOS to access any desired hardware +functions. Since the HBIOS proxy occupies only 512 bytes at the top of +memory, the vast majority of the CPU memory is available to the +operating system and the running application. As far as the operating +system is concerned, all of the hardware driver code has been magically +implemented inside of a small 512 byte area at the top of the CPU +address space. + +Unlike some other Z80 bank switching schemes, there is no attempt to +build bank switching into the operating system itself. This is +intentional so as to ensure that any operating system can easily be +adapted without requiring invasive modifications to the operating system +itself. This also keeps the complexity of memory management completely +away from the operating system and applications. + +There are some operating systems that have built-in support for bank +switching (e.g., CP/M 3). These operating systems are allowed to make +use of the bank switched memory and are compatible with HBIOS. However, +it is necessary that the customization of these operating systems take +into account the banks of memory used by HBIOS and not attempt to use +those specific banks. + +Note that all code and data are located in RAM memory during normal +execution. While it is possible to use ROM memory to run code, it would +require that more upper memory be reserved for data storage. It is +simpler and more memory efficient to keep everything in RAM. At startup +(boot) all required code is copied to RAM for subsequent execution. + +Runtime Memory Layout +===================== + +![Banked Switched Memory Layout](Graphics/Bank Switched Memory){ width=80% } + +System Boot Process +=================== + +A multi-phase boot strategy is employed. This is necessary because at +cold start, the CPU is executing code from ROM in lower memory which is +the same area that is bank switched. + +Boot Phase 1 copies the phase 2 code to upper memory and jumps to it to +continue the boot process. This is required because the CPU starts at +address \$0000 in low memory. However, low memory is used as the area +for switching ROM/RAM banks in and out. Therefore, it is necessary to +relocate execution to high memory in order to initialize the RAM memory +banks. + +Boot Phase 2 manages the setup of the RAM page banks for HBIOS +operation, performs hardware initialization, and then executes the boot +loader. + +Boot Phase 3 is the loading of the selecting operating system (or debug +monitor) by the Boot Loader. The Boot Loader is responsible for +prompting the user to select a target operating system to load, loading +it into RAM, then transferring control to it. The Boot Loader is capable +of loading a target operating system from a variety of locations +including disk drives and ROM. + +Note that the entire boot process is entirely operating system agnostic. +It is unaware of the operating system being loaded. The Boot Loader +prompts the user for the location of the binary image to load, but does +not know anything about what is being loaded (the image is usually an +operating system, but could be any executable code image). Once the Boot +Loader has loaded the image at the selected location, it will transfer +control to it. Assuming the typical situation where the image was an +operating system, the loaded operating system will then perform it's own +initialization and begin normal operation. + +There are actually two ways to perform a system boot. The first, and +most commonly used, method is a "ROM Boot". This refers to booting the +system directly from the startup code contained on the physical ROM +chip. A ROM Boot is always performed upon power up or when a hardware +reset is performed. + +Once the system is running (operating system loaded), it is possible to +reboot the system from a system image contained on the file system. This +is referred to as an "Application Boot". This mechanism allows a +temporary copy of the system to be uploaded and stored on the file +system of an already running system and then used to boot the system. +This boot technique is useful to: 1) test a new build of a system image +before programming it to the ROM; or 2) easily switch between system +images on the fly. + +A more detailed explanation of these two boot processes is presented +below. + +ROM Boot +-------- + +At power on (or hardware reset), ROM page 0 is automatically mapped to +lower memory by hardware level system initialization. Page Zero (first +256 bytes of the CPU address space) is reserved to contain dispatching +instructions for interrupt instructions. Address \$0000 performs a jump +to the start of the phase 1 code so that this first page can be +reserved. + +The phase 1 code now copies the phase 2 code from lower memory to upper +memory and jumps to it. The phase 2 code now initializes the HBIOS by +copying the ROM resident HBIOS from ROM to RAM. It subsequently calls +the HBIOS initialization routine. Finally, it starts the Boot Loader +which prompts the user for the location of the target system image to +execute. + +Once the boot loader transfers control to the target system image, all +of the Phase 1, Phase 2, and Boot Loader code is abandoned and the space +it occupied is normally overwritten by the operating system. + +Application Boot +---------------- + +When a new system image is built, one of the output files produced is an +actual CP/M application (an executable .COM program file). Once you have +a running CP/M (or compatible) system, you can upload/copy this +application file to the filesystem. By executing this file, you will +initiate an Application Boot using the system image contained in the +application file itself. + +Upon execution, the Application Boot program is loaded into memory by +the previously running operating system starting at \$0100. Note that +program image contains a copy of the HBIOS to be installed and run. Once +the Application Boot program is loaded by the previous operating system, +control is passed to it and it performs a system initialization similar +to the ROM Boot, but using the image loaded in RAM. + +Specifically, the code at \$0100 (in low memory) copies phase 2 boot +code to upper memory and transfers control to it. The phase 2 boot code +copies the HBIOS image from application RAM to RAM, then calls the HBIOS +initialization routine. At this point, the prior HBIOS code has been +discarded and overwritten. Finally, the Boot Loader is invoked just like +a ROM Boot. + +Notes +----- + +1. Size of ROM disk and RAM disk will be decreased as needed to + accommodate RAM and ROM memory bank usage for the banked BIOS. + +2. There is no support for interrupt driven drivers at this time. Such + support should be possible in a variety of ways, but none are yet + implemented. + +Driver Model +============ + +The framework code for bank switching also allows hardware drivers to be +implemented mostly without concern for memory management. Drivers are +coded to simply implement the HBIOS functions appropriate for the type +of hardware being supported. When the driver code gets control, it has +already been mapped to the CPU address space and simply performs the +requested function based on parameters passed in registers. Upon return, +the bank switching framework takes care of restoring the original memory +layout expected by the operating system and application. + +However, the one constraint of hardware drivers is that any data buffers +that are to be returned to the operating system or applications must be +allocated in high memory. Buffers inside of the driver's memory bank +will be swapped out of the CPU address space when control is returned to +the operating system. + +If the driver code must make calls to other code, drivers, or utilities +in the driver bank, it must make those calls directly (it must not use +RST 08). This is to avoid a nested bank switch which is not supported at +this time. + +Character / Emulation / Video Services +====================================== + +In addition to a generic set of routines to handle typical character +input/output, HBIOS also includes functionality for managing built-in +video display adapters. To start with there is a basic set of character +input/output functions, the CIOXXX functions, which allow for simple +character data streams. These functions fully encompass routing byte +stream data to/from serial ports. Note that there is a special character +pseudo-device called "CRT". When characters are read/written to/from the +CRT character device, the data is actually passed to a built-in terminal +emulator which, in turn, utilizes a set of VDA (Video Display Adapter) +functions (such as cursor positioning, scrolling, etc.). + +Figure 7.1 depicts the relationship between these components +of HBIOS video processing: + +![Character / Emulation / Video Services](Graphics/Character Emulation Video Services){ width=100% } + +Normally, the operating system will simply utilize the CIOXXX functions +to send and receive character data. The Character I/O Services will +route I/O requests to the specified physical device which is most +frequently a serial port (such as UART or ASCI). As shown above, if the +CRT device is targeted by a CIOXXX function, it will actually be routed +to the Emulation Services which implement TTY, ANSI, etc. escape +sequences. The Emulation Services subsequently rely on the Video Display +Adapter Services as an additional layer of abstraction. This allows the +emulation code to be completely unaware of the actual physical device +(device independent). Video Display Adapter (VDA) Services contains +drivers as needed to handle the available physical video adapters. + +Note that the Emulation and VDA Services API functions are available to +be called directly. Doing so must be done carefully so as to not corrupt +the "state" of the emulation logic. + +Before invoking CIOXXX functions targeting the CRT device, it is +necessary that the underlying layers (Emulation and VDA) be properly +initialized. The Emulation Services must be initialized to specify the +desired emulation and specific physical VDA device to target. Likewise, +the VDA Services may need to be initialized to put the specific video +hardware into the proper mode, etc. + +HBIOS Reference +=============== + +Invocation +---------- + +HBIOS functions are invoked by placing the required parameters in CPU registers and executing an RST 08 instruction. Note that HBIOS does not preserve register values that are unused. However, it will not modify the Z80 alternate registers or IX/IY (these registers may be used within HBIOS, but will be saved and restored internally). + +Normally, applications will not call HBIOS functions directly. It is intended that the operating system makes all HBIOS function calls. Applications that are considered system utilities may use HBIOS, but must be careful not to modify the operating environment in any way that the operating system does not expect. + +In general, the desired function is placed in the B register. Register C is frequently used to specify a subfunction or a target device unit number. Additional registers are used as defined by the specific function. Register A should be used to return function result information. A=0 should indicate success, other values are function specific. + +The character, disk, and video device functions all refer to target devices using a logical device unit number that is passed in the C register. Keep in mind that these unit numbers are assigned dynamically at HBIOS initialization during the device discovery process. The assigned unit numbers are displayed on the consoled at the conclusion of device initialization. The unit assignments will never change after HBIOS initialization. However, they can change at the next boot if there have been hardware or BIOS customization changes. Code using HBIOS functions should not assume fixed unit assignments. + +Some functions utilize pointers to memory buffers. Unless otherwise stated, such buffers can be located anywhere in the Z80 CPU 64K address space. However, performance sensitive buffers (primarily disk I/O buffers) will require double-buffering if the caller’s buffer is in the lower 32K of CPU address space. For optimal performance, such buffers should be placed in the upper 32K of CPU address space. + +\newpage + +Character Input/Output (CIO) +---------------------------- + +Character input/output functions require that a Character Unit be specified in the C register. This is the logical device unit number assigned during the boot process that identifies all character I/O devices uniquely. A special value of 0x80 can be used for Unit to refer to the current console device. + +Character devices can usually be configured with line characteristics +such as speed, framing, etc. A word value (16 bit) is used to describe +the line characteristics as indicated below: + +_Bits_ | _Function_ +------ | ---------- +15-14 | Reserved (set to 0) +13 | RTS +12-8 | Baud Rate (see below) +7 | DTR +6 | XON/XOFF Flow Control +5-3 | Parity (???) +2 | Stop Bits (???) +1-0 | Data Bits (???) + +The 5-bit baud rate value (V) is encoded as V = 75 \* 2\^X \* 3\^Y. The +bits are defined as YXXXX. + +### Function 0x00 -- Character Input (CIOIN) + +| _Entry Parameters_ +| B: 0x00 +| C: Serial Device Unit Number + +| _Exit Results_ +| A: Status +| E: Character Received + +Read a character from the device unit specified in register C and return the character +value in E. If no character(s) are available, this function will wait indefinitely. + +### Function 0x01 -- Character Output (CIOOUT) + +| _Entry Parameters_ +| B: 0x01 +| C: Serial Device Unit Number +| E: Character to Send + +| _Exit Results_ +| A: Status + +Send character value in register E to device specified in register C. If device is +not ready to send, function will wait indefinitely. + +### Function 0x02 -- Character Input Status (CIOIST) + +| _Entry Parameters_ +| B: 0x02 +| C: Serial Device Unit Number + +| _Exit Results_ +| A: Status + +Return the number of characters available to read in the input buffer of the unit +specified. If the device has no input buffer, it is acceptable to return simply 0 or +1 where 0 means there is no character available to read and 1 means there is at +least one character available to read. + +### Function 0x03 -- Character Output Status (CIOOST) + +| _Entry Parameters_ +| B: 0x03 +| C: Serial Device Unit Number + +| _Exit Results_ +| A: Status + +Return the space available in the output buffer expressed as a character count. If a +16 byte output buffer contained 6 characters waiting to be sent, this function would +return 10, the number of positions available in the output buffer. If the port has +no output buffer, it is acceptable to return simply 0 or 1 where 0 means the port is +busy and 1 means the port is ready to output a character. + +### Function 0x04 -- Character IO Initialization (CIOINIT) + +| _Entry Parameters_ +| B: 0x04 +| C: Serial Device Unit Number +| DE: Line Characteristics + +| _Exit Results_ +| A: Status + +Setup line characteristics (baudrate, framing, etc.) of the specified unit. Register +pair DE specifies line characteristics. If DE contains -1 (0xFFFF), then the device +will be reinitialized with the last line characteristics used. Result of function +is returned in A with zero indicating success. + +### Function 0x05 -- Character IO Query (CIOQUERY) + +| _Entry Parameters_ +| B: 0x05 +| C: Serial Device Unit Number + +| _Exit Results_ +| A: Status +| DE: Line Characteristics + +Reports the line characteristics (baudrate, framing, etc.) of the specified unit. +Register pair DE contains the line characteristics upon return. + +### Function 0x06 -- Character IO Device (CIODEVICE) + +| _Entry Parameters_ +| B: 0x06 +| C: Serial Device Unit Number + +| _Exit Results_ +| A: Status +| C: Serial Device Attributes +| D: Serial Device Type +| E: Serial Device Number + +Reports information about the character device unit specified. Register C indicates +the device attributes: 0=RS-232 and 1=Terminal. Register D indicates the device type +(driver) and register E indicates the physical device number assigned by the driver. + +Each character device is handled by an appropriate driver (UART, ASCI, etc.). The driver can be identified by the Device Type. The assigned Device Types are listed below. + +_Id_ | _Device Type / Driver_ +---- | ---------------------- +0x00 | UART +0x10 | ASCI +0x20 | Terminal +0x30 | PropIO VGA +0x40 | ParPortProp VGA +0x50 | SIO +0x60 | ACIA +0x70 | PIO +0x80 | UF + +\newpage + +Disk Input/Output (DIO) +----------------------- + +Character input/output functions require that a character unit be +specified in the C register. This is the logical disk unit number +assigned during the boot process that identifies all disk i/o devices +uniquely. + +A fixed set of media types are defined. The currently defined media types are listed below. Each driver will support a subset of the defined media types. + +**Media ID** | **Value** | **Format** +------------ | --------- | ---------- +MID\_NONE | 0 | No media installed +MID\_MDROM | 1 | ROM Drive +MID\_MDRAM | 2 | RAM Drive +MID\_RF | 3 | RAM Floppy (LBA) +MID\_HD | 4 | Hard Disk (LBA) +MID\_FD720 | 5 | 3.5" 720K Floppy +MID\_FD144 | 6 | 3.5" 1.44M Floppy +MID\_FD360 | 7 | 5.25" 360K Floppy +MID\_FD120 | 8 | 5.25" 1.2M Floppy +MID\_FD111 | 9 | 8" 1.11M Floppy + +### Function 0x10 -- Disk Status (DIOSTATUS) + +| _Entry Parameters_ +| B: 0x10 + +| _Exit Results_ +| A: Status (0=OK, 1=Error) + +### Function 0x11 -- Disk Status (DIORESET) + +| _Entry Parameters_ +| B: 0x11 +| C: Disk Device Unit ID + +| _Exit Results_ +| A: Status (0=OK, 1=Error) + +Reset the physical interface associated with the specified unit. Flag +all units associated with the interface for unit initialization at next +I/O call. Clear media identified unless locked. Reset result code of all +associated units of the physical interface. + +### Function 0x12 -- Disk Seek (DIOSEEK) + +| _Entry Parameters_ +| B: 0x12 +| C: Disk Device Unit ID +| D7: Address Type (0=CHS, 1=LBA) + +| if CHS: +| D6-0: Head +| E: Sector +| HL: Track + +| if LBA: +| DE:HL: Block Address + +| _Exit Results_ +| A: Status (0=OK, 1=Error) + +Update target CHS or LBA for next I/O request on designated unit. +Physical seek is typically deferred until subsequent I/O +operation. + +Bit 7 of D indicates whether the disk seek address is specified as +cylinder/head/sector (CHS) or Logical Block Address (LBA). If D:7=1, then +the remaining bits of of the 32 bit register set DE:HL specify a linear, +zero offset, block number. If D:7=0, then the remaining bits of D specify +the head, E specifies sector, and HL specifies track. + +Note that not all devices will accept both types of addresses. +Specifically, floppy disk devices must have CHS addresses. All other +devices will accept either CHS or LBA. The DIOGEOM function can be used to +determine if the device supports LBA addressing. + +### Function 0x13 -- Disk Read (DIOREAD) + +| _Entry Parameters_ +| B: 0x13 +| C: Disk Device Unit ID +| E: Block Count +| HL: Buffer Address + +| _Exit Results_ +| A: Status (0=OK, 1=Error) +| E: Blocks Reaad + +Read Block Count sectors to buffer address starting at current target +sector. Current sector must be established by prior seek function; +however, multiple read/write/verify function calls can be made after a +seek function. Current sector is incremented after each sector +successfully read. On error, current sector is sector is sector where +error occurred. Blocks read indicates number of sectors successfully read. + +Caller must ensure: 1) buffer address is large enough to contain data for all +sectors requested, and 2) entire buffer area resides in upper 32K of memory. + +### Function 0x14 -- Disk Write (DIOWRITE) + +| _Entry Parameters_ +| B: 0x14 +| C: Disk Device Unit ID +| E: Block Count +| HL: Buffer Address + +| _Exit Results_ +| A: Status (0=OK, 1=Error) +| E: Blocks Written + +Write Block Count sectors to buffer address starting at current target +sector. Current sector must be established by prior seek function; +however, multiple read/write/verify function calls can be made after a +seek function. Current sector is incremented after each sector +successfully written. On error, current sector is sector is sector where +error occurred. Blocks written indicates number of sectors successfully +written. + +Caller must ensure: 1) buffer address is large enough to contain data for all +sectors being written, and 2) entire buffer area resides in upper 32K of memory. + +### Function 0x15 -- Disk Verify (DIOVERIFY) + +| _Entry Parameters_ +| B: 0x15 +| C: Disk Device Unit ID +| HL: Buffer Address +| E: Block Count + +| _Exit Results_ +| A: Status (0=OK, 1=Error) +| E: Blocks Verified + +\*\*\*Not Implemented\*\*\* + +### Function 0x16 -- Disk Format (DIOFORMAT) + +| _Entry Parameters_ +| B: 0x16 +| C: Disk Device Unit ID +| D: Head +| E: Fill Byte +| HL: Cylinder + +| _Exit Results_ +| A: Status (0=OK, 1=Error) + +\*\*\*Not Implemented\*\*\* + +### Function 0x17 -- Disk DEVICE (DIODEVICE) + +| _Entry Parameters_ +| B: 0x17 +| C: Disk Device Unit ID + +| _Exit Results_ +| A: Status (0=OK, 1=Error) +| C: Attributes +| D: Device Type +| E: Device Number + +Reports information about the character device unit specified. Register D +indicates the device type (driver) and register E indicates the physical +device number assigned by the driver. + +Register C reports the following device attributes: + +Bit 7: 1=Floppy, 0=Hard Disk (or similar, e.g. CF, SD, RAM) + +| If Floppy: +| Bits 6-5: Form Factor (0=8", 1=5.25", 2=3.5", 3=Other) +| Bit 4: Sides (0=SS, 1=DS) +| Bits 3-2: Density (0=SD, 1=DD, 2=HD, 3=ED) +| Bits 1-0: Reserved + +| If Hard Disk: +| Bit 6: Removable\ +| Bits: 5-3: Type (0=Hard, 1=CF, 2=SD, 3=USB, +| 4=ROM, 5=RAM, 6=RAMF, 7=Reserved) +| Bits 2-0: Reserved + +Each disk device is handled by an appropriate driver (IDE, SD, +etc.) which is identified by a device type id from the table below. + +**Type ID** | **Disk Device Type** +----------- | -------------------- +0x00 | Memory Disk +0x10 | Floppy Disk +0x20 | RAM Floppy +0x30 | IDE Disk +0x40 | ATAPI Disk (not implemented) +0x50 | PPIDE Disk +0x60 | SD Card +0x70 | PropIO SD Card +0x80 | ParPortProp SD Card +0x90 | SIMH HDSK Disk + +### Function 0x18 -- Disk Media (DIOMEDIA) + +| _Entry Parameters_ +| B: 0x18 +| C: Disk Device Unit ID +| E0: Enable Media Discovery + +| _Exit Results_ +| A: Status (0=OK, 1=Error) +| E: Media ID + +Report the media definition for media in specified unit. If bit 0 of E is +set, then perform media discovery or verification. If no media in device, +return no media error. + +### Function 0x19 -- Disk Define Media (DIODEFMED) + +| _Entry Parameters_ +| B: 0x19 +| C: Disk Device Unit ID +| E: Media ID + +| _Exit Results_ +| A: Status (0=OK, 1=Error) + +\*\*\* Not implemented \*\*\* + +### Function 0x1A -- Disk Capacity (DIOCAPACITY) + +| _Entry Parameters_ +| B: 0x1A +| C: Disk Device Unit ID +| HL: Buffer Address + +| _Exit Results_ +| A: Status (0=OK, 1=Error) +| DE:HL: Blocks on Device +| BC: Block Size + +Report current media capacity information. DE:HL is a 32 bit number +representing the total number of blocks on the device. BC contains the +block size. If media is unknown, an error will be returned. + +### Function 0x1B -- Disk Geometry (DIOGEOMETRY) + +| _Entry Parameters_ +| B: 0x1B +| C: Disk Device Unit ID + +| _Exit Results_ +| A: Status (0=OK, 1=Error) +| HL: Cylinders +| D7: LBA Capability +| BC: Block Size + +Report current media geometry information. If media is unknown, return +error (no media). + +\newpage + +Real Time Clock (RTC) +--------------------- + +The Real Time Clock functions provide read/write access to the clock and +related Non-Volatile RAM. + +The time functions (RTCGTM and RTCSTM) require a 6 byte date/time buffer +of the following format. Each byte is BCD encoded. + +**Offset** | **Contents** +---------- | ------------ +0 | Year (00-99) +1 | Month (01-12) +2 | Date (01-31) +3 | Hours (00-24) +4 | Minutes (00-59) +5 | Seconds (00-59) + +### Function 0x20 -- RTC Get Time (RTCGETTIM) + +| _Entry Parameters_ +| B: 0x20 +| HL: Time Buffer Address + +| _Exit Results_ +| A: Status (0=OK, else error) + +Read the current value of the clock and store the date/time in the +buffer pointed to by HL. + +### Function 0x21 -- RTC Set Time (RTCSETTIM) + +| _Entry Parameters_ +| B: 0x21 +| HL: Time Buffer Address + +| _Exit Results_ +| A: Status (0=OK, else error) + +Set the current value of the clock based on the date/time in the buffer +pointed to by HL. + +### Function 0x22 -- RTC Get NVRAM Byte (RTCGETBYT) + +| _Entry Parameters_ +| B: 0x22 +| C: Index + +| _Exit Results_ +| A: Status (0=OK, else error) +| E: Value + +Read a single byte value from the Non-Volatile RAM at the index +specified by C. The value is returned in register E. + +### Function 0x23 -- RTC Set NVRAM Byte (RTCSETBYT) + +| _Entry Parameters_ +| B: 0x23 +| C: Index + +| _Exit Results_ +| A: Status (0=OK, else error) +| E: Value + +Write a single byte value into the Non-Volatile RAM at the index +specified by C. The value to be written is specified in E. + +### Function 0x24 -- RTC Get NVRAM Block (RTCGETBLK) + +| _Entry Parameters_ +| B: 0x24 +| HL: Buffer + +| _Exit Results_ +| A: Status (0=OK, else error) + +Read the entire contents of the Non-Volatile RAM into the buffer pointed +to by HL. HL must point to a location in the top 32K of CPU address space. + +### Function 0x25 -- RTC Set NVRAM Block (RTCSETBLK) + +| _Entry Parameters_ +| B: 0x25 +| HL: Buffer + +| _Exit Results_ +| A: Status (0=OK, else error) + +Write the entire contents of the Non-Volatile RAM from the buffer +pointed to by HL. HL must point to a location in the top 32K of CPU +address space. + +Video Display Adapter (VDA) +--------------------------- + +The VDA functions are provided as a common interface to Video Display +Adapters. Not all VDAs will include keyboard hardware. In this case, the +keyboard functions should return a failure status. + +Depending on the capabilities of the hardware, the use of colors and +attributes may or may not be supported. If the hardware does not support +these capabilities, they will be ignored. + +Color byte values are constructed using typical RGBI +(Red/Green/Blue/Intensity) bits. The high four bits of the value +determine the background color and the low four bits determine the +foreground color. This results in 16 unique color values for both +foreground and background. The following table illustrates the color +byte value construction: + +  | **Bit** | **Color** +---------- | ------- | --------- +Background | 7 | Intensity +  | 6 | Blue +  | 5 | Green +  | 4 | Red +Foreground | 3 | Intensity +  | 2 | Blue +  | 1 | Green +  | 0 | Red + +The following table illustrates the resultant color for each of the +possible 16 values for foreground or background: + +**Foreground** | **Background** | **Color** +------------------ | ------------------ | ---------------- +\_0 \_\_\_\_0000 | 0\_ 0000\_\_\_\_ | Black +\_1 \_\_\_\_0001 | 1\_ 0001\_\_\_\_ | Red +\_2 \_\_\_\_0010 | 2\_ 0010\_\_\_\_ | Green +\_3 \_\_\_\_0011 | 3\_ 0011\_\_\_\_ | Brown +\_4 \_\_\_\_0100 | 4\_ 0100\_\_\_\_ | Blue +\_5 \_\_\_\_0101 | 5\_ 0101\_\_\_\_ | Magenta +\_6 \_\_\_\_0110 | 6\_ 0110\_\_\_\_ | Cyan +\_7 \_\_\_\_0111 | 7\_ 0111\_\_\_\_ | White +\_8 \_\_\_\_1000 | 8\_ 1000\_\_\_\_ | Gray +\_9 \_\_\_\_1001 | 9\_ 1001\_\_\_\_ | Light Red +\_A \_\_\_\_1010 | A\_ 1010\_\_\_\_ | Light Green +\_B \_\_\_\_1011 | B\_ 1011\_\_\_\_ | Yellow +\_C \_\_\_\_1100 | C\_ 1100\_\_\_\_ | Light Blue +\_D \_\_\_\_1101 | D\_ 1101\_\_\_\_ | Light Magenta +\_E \_\_\_\_1110 | E\_ 1110\_\_\_\_ | Light Cyan +\_F \_\_\_\_1111 | F\_ 1111\_\_\_\_ | Bright White + +Attribute byte values are constructed using the following bit encoding: + +**Bit** | **Effect** +------- | ---------- +7 | n/a (0) +6 | n/a (0) +5 | n/a (0) +4 | n/a (0) +3 | n/a (0) +2 | Reverse +1 | Underline +0 | Blink + +The following codes are returned by a keyboard read to signify non-ASCII +keystrokes: + +**Value** | **Keystroke** | **Value** | **Keystroke** +--------- | ------------- | --------- | ------------- +0xE0 | F1 | 0xF0 | Insert +0xE1 | F2 | 0xF1 | Delete +0xE2 | F3 | 0xF2 | Home +0xE3 | F4 | 0xF3 | End +0xE4 | F5 | 0xF4 | PageUp +0xE5 | F6 | 0xF5 | PadeDown +0xE6 | F7 | 0xF6 | UpArrow +0xE7 | F8 | 0xF7 | DownArrow +0xE8 | F9 | 0xF8 | LeftArrow +0xE9 | F10 | 0xF9 | RightArrow +0xEA | F11 | 0xFA | Power +0xEB | F12 | 0xFB | Sleep +0xEC | SysReq | 0xFC | Wake +0xED | PrintScreen | 0xFD | Break +0xEE | Pause | 0xFE | +0xEF | App | 0xFF | + +### Function 0x40 -- Video Initialize (VDAINI) + +| _Entry Parameters_ +| B: 0x40 +| C: Video Device Unit ID +| E: Video Mode (device specific) +| HL: Font Bitmap Buffer Address (optional) + +| _Exit Results_ +| A: Status (0=OK, else error) + +Performs a full (re)initialization of the specified video device. The +screen is cleared and the keyboard buffer is flushed. If the specified +VDA supports multiple video modes, the requested mode can be specified +in E (set to 0 for default/not specified). Mode values are specific to +each VDA. + +HL may point to a location in memory with the character bitmap to be +loaded into the VDA video processor. The location MUST be in the top 32K +of the CPU memory space. HL must be set to zero if no character bitmap +is specified (the VDA video processor will utilize a default character +bitmap). + +### Function 0x41 -- Video Query (VDAQRY) + +| _Entry Parameters_ +| B: 0x41 +| C: Video Device Unit ID +| HL: Font Bitmap Buffer Address (optional) + +| _Exit Results_ +| A: Status (0=OK, else error) +| C: Video Mode +| D: Row Count +| E: Column Count +| HL: Font Bitmap Buffer Address (0 if N/A) + +Return information about the specified video device. C will be set to +the current video mode. DE will return the dimensions of the video +display as measured in rows and columns. Note that this is the **count** +of rows and columns, not the **last** row/column number. + +If HL is not zero, it must point to a suitably sized memory buffer in +the upper 32K of CPU address space that will be filled with the current +character bitmap data. It is critical that HL be set to zero if it does +not point to a proper buffer area or memory corruption will result. The +video device driver may not have the ability to provide character bitmap +data. In this case, on return, HL will be set to zero. + +### Function 0x42 -- Video Reset (VDARES) + +| _Entry Parameters_ +| B: 0x42 +| C: Video Device Unit ID + +| _Exit Results_ +| A: Status (0=OK, else error) + +Performs a soft reset of the Video Display Adapter. Should clear the +screen, home the cursor, restore active attribute and color to defaults. +Keyboard should be flushed. + +### Function 0x43 -- Video Device (VDADEV) + +| _Entry Parameters_ +| B: 0x43 +| C: Video Device Unit ID + +| _Exit Results_ +| A: Status (0=OK, else error) +| D=Device Type +| E=Device Number + +Reports information about the video device unit specified. + +Register D reports the video device type (see below). + +Register E reports the driver relative physical device number. + +The currently defined video device types are: + +VDA ID | Value | Device +---------- | ----- | ------ +VDA\_NONE | 0x00 | No VDA +VDA\_VDU | 0x10 | ECB VDU board +VDA\_CVDU | 0x20 | ECB Color VDU board +VDA\_7220 | 0x30 | ECB uPD7220 video display board +VDA\_N8 | 0x40 | TMS9918 video display built-in to N8 +VDA\_VGA | 0x50 | ECB VGA board + +### Function 0x44 -- Video Set Cursor Style (VDASCS) + +| _Entry Parameters_ +| B: 0x44 +| C: Video Device Unit ID +| D: Start/End Pixel Row +| E: Style + +| _Exit Results_ +| A: Status (0=OK, else error) + +If supported by the video hardware, adjust the format of the cursor such +that the cursor starts at the pixel specified in the top nibble of D and +end at the pixel specified in the bottom nibble of D. So, if D=\$08, a +block cursor would be used that starts at the top pixel of the character +cell and ends at the ninth pixel of the character cell. + +Register E is reserved to control the style of the cursor (blink, +visibility, etc.), but is not yet implemented. + +Adjustments to the cursor style may or may not be possible for any given +video hardware. + +### Function 0x45 -- Video Set Cursor Position (VDASCP) + +| _Entry Parameters_ +| B: 0x45 +| C: Video Device Unit ID +| D: Row (0 indexed) +| E: Column (0 indexed) + +| _Exit Results_ +| A: Status (0=OK, else error) + +Reposition the cursor to the specified row and column. Specifying a +row/column that exceeds the boundaries of the display results in +undefined behavior. Cursor coordinates are 0 based (0,0 is the upper +left corner of the display). + +### Function 0x46 -- Video Set Character Attribute (VDASAT) + +| _Entry Parameters_ +| B: 0x46 +| C: Video Device Unit ID +| E: Character Attribute Code + +| _Exit Results_ +| A: Status (0=OK, else error) + +Assign the specified character attribute code to be used for all +subsequent character writes/fills. This attribute is used to fill new +lines generated by scroll operations. Refer to the character attribute +for a list of the available attribute codes. Note that a given video +display may or may not support any/all attributes. + +### Function 0x47 -- Video Set Character Color (VDASCO) + +| _Entry Parameters_ +| B: 0x47 +| C: Video Device Unit ID +| E: Character Color Code + +| _Exit Results_ +| A: Status (0=OK, else error) + +Assign the specified color code to be used for all subsequent character +writes/fills. This color is also used to fill new lines generated by +scroll operations. Refer to color code table for a list of the available +color codes. Note that a given video display may or may not support +any/all colors. + +### Function 0x48 -- Video Set Write Character (VDAWRC) + +| _Entry Parameters_ +| B: 0x48 +| C: Video Device Unit ID +| E: Character + +| _Exit Results_ +| A: Status (0=OK, else error) + +Write the character specified in E. The character is written starting at +the current cursor position and the cursor is advanced. If the end of +the line is encountered, the cursor will be advanced to the start of the +next line. The display will **not** scroll if the end of the screen is +exceeded. + +### Function 0x49 -- Video Fill (VDAFIL) + +| _Entry Parameters_ +| B: 0x49 +| C: Video Device Unit ID +| E: Character +| HL: Count + +| _Exit Results_ +| A: Status (0=OK, else error) + +Write the character specified in E to the display the number of times +specified in HL. Characters are written starting at the current cursor +position and the cursor is advanced by the number of characters written. +If the end of the line is encountered, the characters will continue to +be written starting at the next line as needed. The display will **not** +scroll if the end of the screen is exceeded. + +### Function 0x4A -- Video Copy (VDACPY) + +| _Entry Parameters_ +| B: 0x4A +| C: Video Device Unit ID +| D: Source Row +| E: Source Column +| L: Count + +| _Exit Results_ +| A: Status (0=OK, else error) + +Copy count (L) bytes from the source row/column (DE) to current cursor +position. The cursor position is not updated. The maximum count is 255. +Copying to/from overlapping areas is not supported and will have an +undefined behavior. The display will **not** scroll if the end of the +screen is exceeded. Copying beyond the active screen buffer area is not +supported and results in undefined behavior. + +### Function 0x4B -- Video Scroll (VDASCR) + +| _Entry Parameters_ +| B: 0x4B +| C: Video Device Unit ID +| E: Scroll Distance (Line Count) + +| _Exit Results_ +| A: Status (0=OK, else error) + +Scroll the video display by the number of lines specified in E. If E +contains a negative number, then reverse scroll should be performed. + +### Function 0x4C -- Video Keyboard Status (VDAKST) + +| _Entry Parameters_ +| B: 0x4C +| C: Video Device Unit ID + +| _Exit Results_ +| A: Status (# Key Codes in Keyboard Buffer) + +Return a count of the number of key codes in the keyboard buffer. If it +is not possible to determine the actual number in the buffer, it is +acceptable to return 1 to indicate there are key codes available to read +and 0 if there are none available. + +### Function 0x4D -- Video Keyboard Flush (VDAKFL) + +| _Entry Parameters_ +| B: 0x4D +| C: Video Device Unit ID + +| _Exit Results_ +| A: Status (0=OK, else error) + +If a keyboard buffer is in use, it should be purged and all contents +discarded. + +### Function 0x4E -- Video Keyboard Read (VDAKRD) + +| _Entry Parameters_ +| B: 0x4E +| C: Video Device Unit ID + +| _Exit Results_ +| A: Status (0=OK, else error) +| C: Scancode +| D: Keystate +| E: Keycode + +Read next key code from keyboard. If a keyboard buffer is used, return +the next key code in the buffer. If no key codes are available, wait for +a keypress and return the keycode. + +The scancode value is the raw scancode from the keyboard for the +keypress. Scancodes are from scancode set 2 standard. + +The keystate is a bitmap representing the value of all modifier keys and +shift states as they existed at the time of the keystroke. The bitmap is +defined as: + +Bit | Keystate Indication +--- | -------------------------------- +7 | Key pressed was from the num pad +6 | Caps Lock was active +5 | Num Lock was active +4 | Scroll Lock was active +3 | Windows key was held down +2 | Alt key was held down +1 | Control key was held down +0 | Shift key was held down + +Keycodes are generally returned as appropriate ASCII values, if +possible. Special keys, like function keys, are returned as reserved +codes as described at the start of this section. + +System (SYS) +------------ + +### Function 0xF0 -- System Reset (SYSRESET) + +| _Entry Parameters_ +| B: 0xF0 + +| _Exit Results_ +| A: Status (0=OK, else error) + +Perform a soft reset of HBIOS. Releases all HBIOS memory allocated by +current OS. Does not reinitialize physical devices. + +### Function 0xF1 -- System Version (SYSVER) + +| _Entry Parameters_ +| B: 0xF1 +| C: Reserved (set to 0) + +| _Exit Results_ +| A: Status (0=OK, else error) +| DE: Version (Maj/Min/Upd/Pat) +| L: Platform ID + +This function will return the HBIOS version number. The version number +is returned in DE. High nibble of D is the major version, low nibble of +D is the minor version, high nibble of E is the patch number, and low +nibble of E is the build number. + +The hardware platform is identified in L: + +Id | Platform +-- | --------------------------------------------------- +1 | SBC V1 or V2 +2 | ZETA +3 | ZETA 2 +4 | N8 +5 | MK4 +6 | UNA +7 | RC2014 w/ Z80 +8 | RC2014 w/ Z180 + +### Function 0xF2 -- System Set Bank (SYSSETBNK) + +| _Entry Parameters_ +| B: 0xF2 +| C: Bank ID + +| _Exit Results_ +| A: Status (0=OK, else error) +| C: Previously Active Bank ID + +Activates the Bank ID specified in C and returns the previously active +Bank ID in C. The caller MUST be invoked from code located in the upper +32K and the stack **must** be in the upper 32K. + +### Function 0xF3 -- System Get Bank (SYSGETBNK) + +| _Entry Parameters_ +| B: 0xF3 + +| _Exit Results_ +| A: Status (0=OK, else error) +| C: Active Bank ID + +Returns the currently active Bank ID in C. + +### Function 0xF4 -- System Set Copy (SYSSETCPY) + +| _Entry Parameters_ +| B: 0xF4 +| D: Destination Bank ID +| E: Source Bank ID +| HL: Count of Bytes to Copy + +| _Exit Results_ +| A: Status (0=OK, else error) + +Prepare for a subsequent interbank memory copy (SYSBNKCPY) function by +setting the source bank, destination bank, and byte count for the copy. +The bank id's are not range checked and must be valid for the system in +use. + +No bytes are copied by this function. The SYSBNKCPY must be called to +actually perform the copy. The values setup by this function will remain +unchanged until another call is make to this function. So, after calling +SYSSETCPY, you may make multiple calls to SYSBNKCPY as long as you want +to continue to copy between the already established Source/Destination +Banks and the same size copy if being performed. + +### Function 0xF5 -- System Bank Copy (SYSBNKCPY) + +| _Entry Parameters_ +| B: 0xF5 +| DE: Destination Address +| HL: Source Address + +| _Exit Results_ +| A: Status (0=OK, else error) + +Copy memory between banks. The source bank, destination bank, and byte +count to copy MUST be established with a prior call to SYSSETCPY. +However, it is not necessary to call SYSSETCPY prior to subsequent calls +to SYSBNKCPY if the source/destination banks and copy length do not +change. + +WARNINGS: + +* This function is inherently dangerous and does not prevent you from + corrupting critical areas of memory. Use with **extreme** caution. + +* Overlapping source and destination memory ranges are not supported and + will result in undetermined behavior. + +* Copying of byte ranges that cross bank boundaries is undefined. + +### Function 0xF6 -- System Alloc (SYSALLOC) + +| _Entry Parameters_ +| B: 0xF6 +| HL: Size in Bytes + +| _Exit Results_ +| A: Status (0=OK, else error) +| HL: Address of Allocated Memory + +This function will attempt to allocate a block of memory of HL bytes +from the internal HBIOS heap. The HBIOS heap resides in the HBIOS bank +in the area of memory left unused by HBIOS. If the allocation is +successful, the address of the allocated memory block is returned in HL. +You will typically want to use the SYSBNKCPY function to read/write the +allocated memory. + +### Function 0xF7 -- System Free (SYSFREE) + +| _Entry Parameters_ +| B: 0xF7 +| HL: Address of Memory Block to Free + +| _Returned Values_ +| A: Status (0=OK, else error) + +\*\*\* This function is not yet implemented \*\*\* + +### Function 0xF8 -- System Get (SYSGET) + +| _Entry Parameters_ +| B: 0xF8 +| C: Subfunction (see below) + +| _Returned Values_ +| A: Status (0=OK, else error) + +This function will report various system information based on the +sub-function value. The following lists the subfunctions +available along with the registers/information returned. + +#### SYSGET Subfunction 0x00 -- Get Serial Device Unit Count (CIOCNT) + +| _Entry Parameters_ +| BC: 0xF800 + +| _Returned Values_ +| A: Status (0=OK, else error) +| E: Count of Serial Device Units + +#### SYSGET Subfunction 0x10 -- Get Disk Device Unit Count (DIOCNT) + +| _Entry Parameters_ +| BC: 0xF810 + +| _Returned Values_ +| A: Status (0=OK, else error) +| E: Count of Disk Device Units + +#### SYSGET Subfunction 0x40 -- Get Video Device Unit Count (VDACNT) + +| _Entry Parameters_ +| BC: 0xF840 + +| _Returned Values_ +| A: Status (0=OK, else error) +| E: Count of Video Device Units + +#### SYSGET Subfunction 0xD0 -- Get Timer Tick Count (TIMER) + +| _Entry Parameters_ +| BC: 0xF8D0 + +| _Returned Values_ +| A: Status (0=OK, else error) +| DE:HL: Current Timer Tick Count Value + +#### SYSGET Subfunction 0xD1 -- Get Seconds Count (SECONDS) + +| _Entry Parameters_ +| BC: 0xF8D1 + +| _Returned Values_ +| A: Status (0=OK, else error) +| DE:HL: Current Seconds Count Value +| C: Ticks within Second Value + +#### SYSGET Subfunction 0xE0 -- Get Boot Information (BOOTINFO) + +| _Entry Parameters_ +| BC: 0xF8E0 + +| _Returned Values_ +| A: Status (0=OK, else error) +| L: Boot Bank ID +| D: Boot Disk Device Unit ID +| E: Boot Disk Slice + +#### SYSGET Subfunction 0xF0 -- Get CPU Information (CPUINFO) + +| _Entry Parameters_ +| BC: 0xF8F0 + +| _Returned Values_ +| A: Status (0=OK, else error) +| H: Z80 CPU Variant +| L: CPU Speed in MHz +| DE: CPU Speed in KHz + +#### SYSGET Subfunction 0xF1 -- Get Memory Information (MEMINFO) + +| _Entry Parameters_ +| BC: 0xF8F1 + +| _Returned Values_ +| A: Status (0=OK, else error) +| D: Count of 32K ROM Banks +| E: Count of 32K RAM Banks + +#### SYSGET Subfunction 0xF2 -- Get Bank Information (BNKINFO) + +| _Entry Parameters_ +| BC: 0xF8F2 + +| _Returned Values_ +| A: Status (0=OK, else error) +| D: BIOS Bank ID +| E: User Bank ID + +### Function 0xF9 -- System Set (SYSSET) + +| _Entry Parameters_ +| B: 0xF9 +| C: Subfunction (see below) + +| _Returned Values_ +| A: Status (0=OK, else error) + +This function will set various system parameters based on the +sub-function value. The following lists the subfunctions +available along with the registers/information used as input. + +#### SYSSET Subfunction 0xD0 -- Set Timer Tick Count (TIMER) + +| _Entry Parameters_ +| BC: 0xF9D0 +| DE:HL: Timer Tick Count Value + +| _Returned Values_ +| A: Status (0=OK, else error) + + +#### SYSSET Subfunction 0xD1 -- Set Seconds Count (SECONDS) + +| _Entry Parameters_ +| BC: 0xF9D1 +| DE:HL: Seconds Count Value + +| _Returned Values_ +| A: Status (0=OK, else error) + + +#### SYSSET Subfunction 0xE0 -- Set Boot Information (BOOTINFO) + +| _Entry Parameters_ +| BC: 0xF9E0 +| L: Boot Bank ID +| D: Boot Disk Device Unit ID +| E: Boot Disk Slice + +| _Returned Values_ +| A: Status (0=OK, else error) + +### Function 0xFA -- System Peek (SYSPEEK) + +| _Entry Parameters_ +| B: 0xFA +| D: Bank ID +| HL: Memory Address + +| _Returned Values_ +| A: Status (0=OK, else error) +| E: Byte Value + +This function gets a single byte value at the specified bank/address. +The bank specified is not range checked. + +### Function 0xFB -- System Poke (SYSPOKE) + +| _Entry Parameters_ +| B: 0xFB +| D: Bank ID +| E: Value +| HL: Memory Address + +| _Returned Values_ +| A: Status (0=OK, else error) + +This function sets a single byte value at the specified bank/address. +The bank specified is not range checked. + +### Function 0xFC -- System Interrupt Management (SYSINT) + +| _Entry Parameters_ +| B: 0xFC +| C: Subfunction (see below) + +| _Returned Values_ +| A: Status (0=OK, else error) + +This function allows the caller to query information about the interrupt configuration of +the running system and allows adding or hooking interrupt handlers dynamically. Register C +is used to specify a subfunction. Additional input and output registers may be used as +defined by the sub-function. + +Note that during interrupt processing, the lower 32K of CPU address space will contain the +RomWBW HBIOS code bank, not the lower 32K of application TPA. As such, a dynamically +installed interrupt handler does not have access to the lower 32K of TPA and must be +careful to avoid modifying the contents of the lower 32K of memory. Invoking RomWBW HBIOS +functions within an interrupt handler is not supported. + +Interrupt handlers are different for IM1 or IM2. + +For IM1: + +> The new interrupt handler is responsible for chaining (JP) to the previous vector if the + interrupt is not handled. If the interrupt is handled, the new handler may simply return + (RET). When chaining to the previous interrupt handler, ZF must be set if interrupt is + handled and ZF cleared if not handled. The interrupt management framework takes care of + saving and restoring AF, BC, DE, HL, and IY. Any other registers modified must be saved + and restored by the interrupt handler. + +For IM2: + +> The new interrupt handler may either replace or hook the previous interrupt handler. To + replace the previous interrupt handler, the new handler just returns (RET) when done. To + hook the previous handler, the new handler can chain (JP) to the previous vector. Note + that initially all IM2 interrupt vectors are set to be handled as “BAD” meaning that the + interrupt is unexpected. In most cases, you do not want to chain to the previous vector + because it will cause the interrupt to display a “BAD INT” system panic message. + + The interrupt framework will take care of issuing an EI and RETI instruction. Do not put + these instructions in your new handler. Additionally, interrupt management framework takes care of saving and restoring AF, BC, DE, HL, and IY. Any other registers modified must be saved and restored by the interrupt handler. + + +If the caller is transient, then the caller must remove the new interrupt handler and +restore the original one prior to termination. This is accomplished by calling this +function with the Interrupt Vector set to the Previous Vector returned in the original call. + +The caller is responsible for disabling interrupts prior to making an INTSET call and +enabling them afterwards. The caller is responsible for ensuring that a valid interrupt +handler is installed prior to enabling any hardware interrupts associated with the handler. +Also, if the handler is transient, the caller must disable the hardware interrupt(s) +associated with the handler prior to uninstalling it. + +#### SYSINT Subfunction 0x00 -- Interrupt Info (INTINF) + +| _Entry Parameters_ +| BC: 0xFC00 + +| _Returned Values_ +| A: Status (0=OK, else error) +| D: Interrupt Mode +| E: Size (# entries) of Interrupt Vector Table + +Return interrupt mode in D and size of interrupt vector table in E. For +IM1, the size of the table is the number of vectors chained together. +For IM2, the size of the table is the number of slots in the vector +table. + +#### SYSINT Subfunction 0x10) -- Get Interrupt (INTGET) + +| _Entry Parameters_ +| BC: 0xFC10 +| E: Interrupt Vector Table Index + +| _Returned Values_ +| A: Status (0=OK, else error) +| HL: Current Interrupt Vector Address + +On entry, register E must contain an index into the interrupt vector +table. On return, HL will contain the address of the current interrupt +vector at the specified index. + +#### SYSINT Subfunction 0x20) -- Set Interrupt (INTSET) + +| _Entry Parameters_ +| BC: 0xFC20 +| E: Interrupt Vector Table Index +| HL: Interrupt Address to be Assigned + +| _Returned Values_ +| A: Status (0=OK, else error) +| HL: Previous Interrupt Vector Address +| DE: Interrupt Routing Engine Address (IM2) + +On entry, register E must contain an index into the interrupt vector table and register HL +must contain the address of the new interrupt vector to be inserted in the table at the +index. On return, HL will contain the previous address in the table at the index. diff --git a/Source/Doc/Build.cmd b/Source/Doc/Build.cmd deleted file mode 100644 index 5a595d65..00000000 --- a/Source/Doc/Build.cmd +++ /dev/null @@ -1,6 +0,0 @@ -@echo off -setlocal - -setlocal & cd "ZCPR Manual" && call Build.cmd || exit /b 1 & endlocal -rem setlocal & cd "RomWBW User Guide" && call Build.cmd || exit /b 1 & endlocal -rem setlocal & cd "RomWBW System Guide" && call Build.cmd || exit /b 1 & endlocal \ No newline at end of file diff --git a/Source/Doc/Build.docx b/Source/Doc/Build.docx deleted file mode 100644 index 31c11c3932cc67e6b78fff2c082abb9865a5d3fa..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22239 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 DhX=i= diff --git a/Source/Doc/Clean.cmd b/Source/Doc/Clean.cmd deleted file mode 100644 index 1c04ba1b..00000000 --- a/Source/Doc/Clean.cmd +++ /dev/null @@ -1,6 +0,0 @@ -@echo off -setlocal - -setlocal & cd ZCPR Manual && call Clean.cmd & endlocal -setlocal & cd RomWBW User Guide && call Clean.cmd & endlocal -setlocal & cd RomWBW System Guide && call Clean.cmd & endlocal diff --git a/Source/Doc/GettingStarted.md b/Source/Doc/GettingStarted.md new file mode 100644 index 00000000..20c3112c --- /dev/null +++ b/Source/Doc/GettingStarted.md @@ -0,0 +1,547 @@ +!include(Common.inc) +!def(name)(Getting Started) +--- +title: RomWBW !name +author: !author (mailto:!authmail) +date: !date +institution: !orgname +documentclass: article +toc: true +classoption: + - oneside +papersize: letter +geometry: + - top=1in + - bottom=1in + - left=1in + - right=1in +# - showframe +linestretch: 1.25 +colorlinks: true +fontfamily: helvet +fontsize: 12pt +header-includes: + - | + ```{=latex} + \renewcommand*{\familydefault}{\sfdefault} + ``` +--- + +`\clearpage`{=latex} + +# RomWBW + +## Z80/Z180 System Software + +Version !ver of !date + +!author() [!authmail](mailto:!authmail) + +### Download + + * [RomWBW Distribution Package](https://github.com/wwarthen/RomWBW/releases) + +### Related Pages + + * [RomWBW Architecture Document](https://www.retrobrewcomputers.org/lib/exe/fetch.php?media=software:firmwareos:romwbw:romwbw_architecture.pdf) + * [RomWBW Applications](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:apps) + * [RomWBW Errata](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:errata) + +# Overview + +RomWBW provides a complete software system for a wide variety of hobbyist Z80/Z180 CPU-based systems produced by these developer communities: + + * [Retrobrew Computers](https://www.retrobrewcomputers.org) + * [RC2014](https://rc2014.co.uk) + * [retro-comp](https://groups.google.com/forum/#!forum/retro-comp) + +General features include: + + * Banked memory services for several banking designs + * Disk drivers for RAM, ROM, Floppy, IDE, CF, and SD + * Serial drivers including UART (16550-like), ASCI, ACIA, SIO + * Video drivers including TMS9918, SY6545, MOS8563, HD6445 + * Real time clock drivers including DS1322, BQ4845 + * Multiple OS support including CP/M 2.2, ZSDOS, CP/M 3, ZPM3 + * Built-in VT-100 terminal emulation support + +RomWBW is distributed as both source code and pre-built ROM and disk images. Some of the provided software can be launched directly from the ROM firmware itself: + + * System monitor + * Operating systems (CP/M 2.2, ZSDOS) + * ROM BASIC (Nascom BASIC and Tasty BASIC) + * ROM Forth + +A dynamic disk drive letter assignment mechanism allows mapping operating system drive letters to any available disk media. Additionally, mass media devices (IDE Disk, CF Card, SD Card) support the use of multiple slices (up to 256 per device). Each slice contains a complete CP/M filesystem and can be mapped independently to any drive letter. This overcomes the inherent size limitations in legacy OSes providing up to 2GB of accessible storage on a single device. + +The pre-built ROM firmware images are generally optimal for most users. However, it is also very easy to modify and build custom ROM images that fully tailor the firmware to your specific preferences. All tools required to build custom ROM firmware are included -- no need to install assemblers, etc. Any modern computer running Windows, Linux, or MacOS can be used. + +Multiple disk images are provided in the distribution. Most disk images contain a complete, bootable, ready-to-run implementation of a specific operating system. A "combo" disk image contains multiple slices, each with a full operating system implementation. If you use this disk image, you can easily pick whichever operating system you want to boot without changing media. + +# Installation + +The latest RomWBW distribution downloads are maintained on GitHub in the [RomWBW Repository](https://github.com/wwarthen/RomWBW). The fully-built distributions are found on the [releases page](https://github.com/wwarthen/RomWBW/releases) of the repository. On this page, you will probably see both pre-releases as well as normal releases. Unless you have a specific reason, I suggest you stick to the most recent normal (not pre-release) release. Expand the "Assets" drop-down for the release you want to download, then select the asset named RomWBW-vX.X.X-Package.zip. The Package asset includes all pre-built ROM and Disk images as well as full source code. The other assets called Source Code do not have the pre-built ROM or Disk Images. + +The pre-built ROM images will automatically detect and support a reasonable range of devices including serial ports, video adapters, on-board disk interfaces, and PropIO/ParPortProp boards without building a custom ROM. The distribution is a .zip archive. After downloading it to a working directory on your modern computer (Windows/Linux/Mac) use any zip tool to extract the contents of the archive. + +In general, you will just program your system's ROM chip with the appropriate ROM image from the RomWBW distribution. Depending on how you got your system, you may have already been provided with a pre-programmed ROM chip. If so, use that initially. Otherwise, you will need to use a ROM programmer to initially program your ROM chip. Please refer to the documentation that came with your ROM programmer for more information. Once you have a running RomWBW system, you can generally update your ROM to a newer version in-situ with an included ROM Flashing tool (Will Sowerbutts' FLASH application) as described in the Upgrading section below. + +Looking at the extracted distribution archive, You will see that the distribution is broken up into a few sub-directories. The Binary directory contains the pre-built ROM and disk images. The ROM image files all end in ".rom". Based on the table below, **carefully** pick the appropriate ROM image: + +| Platform | ROM Image File | Baud | Description | +| --------------| --------------------- | --------- | ------------------------------------------------ | +| SBC V1/V2 | SBC_std.rom | 38400 | RetroBrew SBC v1 or v2 ECB Z80 | +| Zeta V1 | ZETA_std.rom | 38400 | RetroBrew Zeta V1 Z80, ParPortProp (optional) | +| Zeta V2 | ZETA2_std.rom | 38400 | RetroBrew Zeta V2 Z80, ParPortProp (optional) | +| N8 | N8_std.rom | 38400 | RetroBrew N8 Z180, date code >= 2312 | +| Mark IV | MK4_std.rom | 38400 | RetroBrew Mark IV ECB Z180 | +| RC2014 Z80 | RCZ80_std.rom | 115200 | RC2014 w/ Z80 CPU, requires 512K RAM/ROM module | +| RC2014 Z180\* | RCZ180_ext.rom | 115200 | RC2014 w/ Z180 CPU & 512K banked RAM/ROM module | +| RC2014 Z180\* | RCZ180_nat.rom | 115200 | RC2014 w/ Z180 CPU & 512K native RAM/ROM module | +| Easy Z80 | EZZ80_std.rom | 115200 | Sergey Kiselev's Easy Z80 | +| SC126 | SCZ180_126.rom | 115200 | Stephen Cousin's SC126 Z180 | +| SC130 | SCZ180_130.rom | 115200 | Stephen Cousin's SC130 Z180 | +| SC131 | SCZ180_131.rom | 115200 | Stephen Cousin's SC131 Z180 | +| Dyno | DYNO_std.rom | 38400 | Steve Garcia's Z180 Dyno Computer | + +\*The RC2014 Z180 requires a separate RAM/ROM memory module. There are two types of these modules and you must pick the ROM for your type of memory module. The "ext" ROM supports Spencer's official 512K RAM/ROM banked memory module. The "nat" ROM supports any of the thrid-party Z180 native memory modules. + +RomWBW will automatically attempt to detect and support typical add-on components for each of the systems supported. More information on the required system configuration and optional supported components for each ROM is found in the file called "RomList.txt" in the Binary directory. All pre-built ROM images are simple 512KB binary images. If your system utilizes a 1MB ROM, you can just program the image into the first 512KB of the ROM. + +Connect a serial terminal or computer with terminal emulation software to the primary serial port of your CPU board. You may need to refer to your hardware provider's documentation for details. A null-modem connection may be required. Set the baud rate as indicated in the table above. Set the line characteristics to 8 data bits, 1 stop bit, no parity, and no flow control. If possible, select VT-100 terminal emulation. + +Upon power-up, your terminal should display a sign-on banner within 2 seconds followed by hardware inventory and discovery information. When hardware initialization is completed, a boot loader prompt allows you to choose a ROM-based operating system, system monitor, application, or boot from a disk device. + +Initially, you should try the ROM boot options. By selecting either CP/M 2.2 or Z-System, the operating system will be loaded from ROM and you will see the a `B>` disk prompt. In this scenario, A: will be an empty RAM disk and B: will refer to your ROM disk containing some typical applications. This provides a simple environment for learning to use your system. Be aware that files saved to the RAM disk (A:) will disappear at the next power on (RAM is generally not persistent). Also note that attempts to save files to the ROM disk (B:) will fail because ROM is not writable. + +# Upgrading + +Upgrading to a newer release of RomWBW is essentially just a matter of updating the ROM chip in your system. If you have spare ROM chips for your system and a ROM programmer, it is always safest to keep your existing, working ROM chip and program a new one with the new firmware. If the new one fails to boot, you can easily return to the known working ROM. + +Prior to attempting to reprogram your actual ROM chip, you may wish to "try" the upgrade. With RomWBW, you can upload a new system image and load it from the command line. For each ROM image file (.rom) in the Binary directory, you will also find a corresponding application file (.com). For example, for SBC_std.rom, there is also an SBC_std.com file. You can upload the .com file to your system using XModem, then simply run the .com file. You will see your system go through the normal startup process just like it was started from ROM. However, your ROM has not been updated and the next time you boot your system, it will revert to the system image contained in ROM. You may find that you are unable to load the .com file because it is too large to fit in available application RAM (TPA). Unfortunately, in this case, you will not be able to use the .com file to start your system. + +If you do not have easy access to a ROM programmer, it is entirely possible to reprogram your system ROM using the FLASH utility from Will Sowerbutts. This application called FLASH.COM can be found on the ROM drive of any running system. In this case, you would need to transfer the new ROM image (.rom) over to your system using XModem. The ROM image will be too large to fit on your RAM drive, so you will need to transfer it to a larger storage drive. Once the ROM image is on your system, you can use the FLASH application to update your ROM: + +``` +E>xm r rom.img + +XMODEM v12.5 - 07/13/86 +RBC, 28-Aug-2019 [WBW], ASCI + +Receiving: E0:ROM.IMG +7312k available for uploads +File open - ready to receive +To cancel: Ctrl-X, pause, Ctrl-X + +Thanks for the upload + +E>flash write rom.img +FLASH4 by Will Sowerbutts version 1.2.3 + +Using RomWBW (v2.6+) bank switching. +Flash memory chip ID is 0xBFB7: 39F040 +Flash memory has 128 sectors of 4096 bytes, total 512KB +Write complete: Reprogrammed 2/128 sectors. +Verify (128 sectors) complete: OK! +``` + +Obviously, there is some risk to this approach since any issues with the programming or ROM image could result in a non-functional system. + +To confirm your ROM chip has been successfully updated, restart your system and boot an operating system from ROM. Do not boot from a disk device yet. Review the boot messages to see if any issues have occurred. + +Once you are satisfied that the ROM is working well, you will need to update the system images and RomWBW custom applications on your disk drives. The system images and custom applications are matched to the RomWBW ROM firmware in use. If you attempt to use a disk or applications that have not been updated to match the current ROM firmware, you are likely to have odd problems. + +The simplest way to update your disk media is to just use your modern computer to overwrite the entire media with the latest disk image of your choice. This process is described below in the Disk Images section. If you wish to update existing disk media in your system, you need to perform the following steps. + +If the disk is bootable, you need to update the system tracks of the disk. This is done using a SYSCOPY command such as `SYSCOPY C:=B:ZSYS.SYS`. For a ZSDOS boot disk, use ZSYS.SYS. For a CP/M 2.2 disk, use CPM.SYS. For a CP/M 3 or ZPM3 disk, use CPMLDR.SYS. CPMLDR.SYS is not provided on the ROM disk, so you would need to upload it from the distribution. + +Finally, if you have copies of any of the RomWBW custom applications on your hard disk, you need to update them with the latest copies. The following applications are found on your ROM disk. Use COPY to copy them over any older versions of the app on your disk: + + * ASSIGN.COM + * FORMAT.COM + * OSLDR.COM + * SYSCOPY.COM + * TALK.COM + * FDU.COM (was FDTST.COM) + * XM.COM + * MODE.COM + * RTC.COM + * TIMER.COM + * INTTEST.COM + +For example: `B>COPY ASSIGN.COM C:` + +# Using Disks + +While the RAM/ROM disks provide a functional system, they are not useful in the long term because you cannot save data across power cycles. They are also constrained by limited space. + +The systems supported by RomWBW all have the ability to use persistent disk media. I am referring to all kinds of disk devices including floppy drives, hard disks, CF Cards, and SD Cards. Some systems have disk interfaces built-in, while others will require add-in cards. You will need to refer to the documentation for your system. + +In the RomWBW bootup messages, you will see hardware discovery messages. If you have a disk drive interface, you should see messages listing device types like FD:, IDE:, PPIDE:, SD:. Additionally, you will see messages indicating the media that has been found on the interfaces. As an example, here are the messages you might see if you have an IDE interface in your system with a single CF Card inserted in the primary side of the interface: + +``` +IDE: IO=0x80 MODE=MK4 +IDE0: 8-BIT LBA BLOCKS=0x00773800 SIZE=3815MB +IDE1: NO MEDIA +``` + +The messages you see will vary depending on your hardware and the media you have installed. But, they will all have the same general format as the example above. + +Once your your system has working disk devices, you can boot an operating system and the operating system will have access to the media. At the boot loader prompt, select either either CP/M 2.2 or Z-System to boot from ROM. As the operating system starts up, you should see a list of drive letters assigned to the disk media you have installed. Here is an example of this: + +``` +Configuring Drives... + + A:=MD1:0 + B:=MD0:0 + C:=IDE0:0 + D:=IDE0:1 +``` + +You will probably see mroe drive letters than this. The drive letter assignment process is described in more detail later in this document. Be aware that RomWBW will only assign drive letters to disk interfaces that actually have media in them. If you do not see drive letters assigned as expected, refer to the prior system boot messages to ensure media has been detected in the interface. Actually, there is one exception to this rule: floppy drives will be assigned a drive letter regardless of whether there is any media inserted at boot. + +Notice how each drive letter refers back to a specific disk hardware interface like IDE0. This is important as it is telling you what each drive letter refers to. Also notice that mass storage disks (like IDE) will normally have multiple drive letters assigned. The extra drive letters refer to additional "slices" on the disk. The concept of slices is also explained later in this document. + +Once you are seeing drive letters referring to your disk media, you can follow the instructions below to begin using the disk media with the operating system. Your disk media **must** be initialized prior to be used. There are two ways to initialize your media for use. + +You can initialize the media in-place using your RomWBW system. This process is described below under Disk Initialization. In this scenario, you will need to subsequently copy any files you want to use onto the newly initialized disk. + +Alternatively, you can use your modern Windows, Linux, or Mac computer to copy a disk image onto the disk media. RomWBW comes with a variety of disk images that are ready to use and have a much more complete set of files than you will find on the ROM disk. This process is covered below under Disk Images. + +## Disk Initialization + +To use a disk device, you will need to initialize the directory of the filesystem. On RomWBW, the initialization is done using the CLRDIR application. For example if your C: drive has been assigned to a storage device, you would use `CLRDIR C:` to initialize C: and prepare it hold files. Note that CLRDIR will prompt you for confirmation and you must respond with a **capital** 'Y' to confirm. Once CLDIR has completed, you can copy files onto the drive, for example `COPY *.* C:`. Be very careful to pay attention to your drive letter assignments prior to running CLRDIR to avoid accidentally wiping out a filesystem that has data on it. + +Running CLRDIR on a disk device is roughly equivalent to running FORMAT on MS-DOS. Note that unlike MS-DOS you do **not** partition your mass storage device. CP/M knows nothing about disk partitions. You may notice a partitioning application on your ROM disk (FDISK80), but this is strictly for an advanced technique of adding an MS-DOS FAT filesystem to your media in addition to the CP/M area. Do not use FDISK80 unless you are specifically attempting to add an MS-DOS FAT filesystem to your media. + +If you are using a floppy drive, you will need to physically format your floppy disk prior to use. This is only required for floppy disks, not hard disk, CF Cards, or SD Cards, etc. To format a floppy drive, you can use the interactive application FDU. FDU is not terribly user friendly, but is generally documented in the file "FDU.txt" found in the Doc directory of the distribution. It is not necessary to run CLRDIR on a floppy disk after physically formatting it -- the directory is cleared as part of the formatting. + +## Booting Disks + +Once you have initialized a disk device and copied your desired files onto it, you may want to boot directly to this disk device at startup. On CP/M filesystems, you must perform one additional step to make a disk bootable. Specifically, you need to place a copy of the oeoprating system on the system tracks of the disk. This is done using the `SYSCOPY` command. Let's say you have prepared drive C: by initializing it with `CLRDIR` and copied some files onto it. You can now make C: bootable by running the following command: + +`B>SYSCOPY C:=B:ZSYS.SYS` + +This command means: copy the Z-System operating system onto the system tracks of drive C:. In this example, it is assumed that you have booted from ROM, so B: is the ROM disk drive. Additionally, this example assumes you want the Z-System operating system to be booted from C:. If you want CP/M 2.2 instead, you would replace `B:ZSYS.SYS` with `B:CPM.SYS`. Here is a full example of this process. + +``` +B>SYSCOPY C:=B:ZSYS.SYS + +SYSCOPY v2.0 for RomWBW CP/M, 17-Feb-2020 (CP/M 2 Mode) +Copyright 2020, Wayne Warthen, GNU GPL v3 + +Transfer system image from B:ZSYS.SYS to C: (Y/N)? Y +Reading image... Writing image... Done +``` + +After successfully putting the operating system on the disk, you can restart your system. When you get to the boot loader, notice the line starting with "Disk:". This line lists the disk devices that you can choose to boot directly. + +You will notice that you do not have an option to boot a drive letter here (like C:). This is because the operating system is not yet loaded. When you ran `SYSCOPY` previously, remember that C: was assigned to IDE0:0 which means device IDE0, slice 0. So, to boot the disk that you just setup with SYSCOPY, you would choose option 1. You will then be prompted for the slice on IDE0 that you want to boot. For now, just press enter to choose slice 0. Once you are familiar with slices, you can `SYSCOPY` and boot alternate slices. Here is what you would see when booting to a disk device: + +``` +MARK IV Boot Loader + +ROM: (M)onitor (C)P/M (Z)-System (F)orth (B)ASIC (T)-BASIC (P)LAY (U)SER ROM +Disk: (0)MD1 (1)MD0 (2)IDE0 (3)IDE1 + +Boot Selection? 2 Slice(0-9)[0]? + +Booting Disk Unit 2, Slice 0... + +Reading disk information... +Loc=D000 End=FE00 Ent=E600 Label=Unlabeled Drive + +Loading... +``` + +Following this, you would see the normal operating system startup messages. However, your operating system prompt will be `A>` and when you look at the drive letter assignments, you should see that A: has been assigned to the disk you selected to boot. + +If you receive the error message "Disk not bootable!", you have either failed to properly run `SYSCOPY` on the target disk or you have selected the wrong disk/slice. + +Note that although MD1 (RAM disk) and MD0 (ROM disk) drives are listed in the Disk boot line, they are not currently "bootable" disks because they have no system tracks on them. Attempting to boot to one of them, will fail with a "Disk not bootable!" error message and return to the loader prompt. + +## Disk Images + +As mentioned previously, RomWBW includes a variety of disk images that contain a full set of applications for the operating systems supported. It is generally easier to use these disk images instead of copying all the files over using XModem. You use your modern computer (Windows, Linux, MacOS) to place the disk image onto the disk media, then just move the media over to your system. In this scenario you **do not** run `CLRDIR` or `SYSCOPY` on the drive(s). The directory prepared and the disk is already bootable, if it is an operating system. + +To copy the disk image files onto your actual media (floppy disk, CF Card, SD Card, etc.), you need to use an image writing utility on your modern computer. Your modern computer will need to have an appropriate interface or slot that accepts the media. To actually copy the image, you can use the `dd` command on Linux or MacOS. On Windows, in the "Tools" directory of the distribution there are two tools you can use. For floppy media, you can use RawWriteWin and for hard disk media, you can use Win32DiskImager. In all cases, the image file should be written to the media starting at the very first block or sector of the media. This will destroy any other data on the media. + +The disk image files are found in the Binary directory of the distribution. Floppy disk images are prefixed with "fd_" and hard disk images are prefixed with "hd_". The floppy images are specifically for 1.44M floppy media only. Each disk image has the complete set of normal applications and tools distributed with the associated operating system or application suite. + +The following table shows the disk image files available. Note that the images in the "Hard" column are fine for use on CF Cards, SD Cards, as well as real spinning hard disks. + +| Floppy | Hard | Description | +| --------------- | --------------- | -------------------------------------- | +| fd_cpm22.img | hd_cpm22.img | DRI CP/M 2.2 bootable disk | +| fd_zsdos.img | hd_zsdos.img | ZSDOS 1.1 bootable disk | +| fd_nzcom.img | hd_nzcom.img | NZCOM bootable disk | +| fd_cpm3 | hd_cpm3.img | DRI CP/M 3 bootable disk | +| fd_zpm3 | hd_zpm3.img | ZPM3 bootable disk | +| fd_ws4 | hd_ws4.img | WordStar v4 application disk | + +In addition to the disk images above, there is also a special hard disk image called hd_combo.img. This image contains all of the images above, but in a single image with 6 slices (see below for information on disk slices). At the boot loader prompt, you can choose a disk with the combo image, then select the specific slice you want. This allows a single disk to have all of the possible operating system options. + +This is the layout of the hd_combo disk image: + +| Slice | Description | +| ------- | ---------------------------------------------------------------- | +| Slice 0 | DRI CP/M 2.2 boot disk | +| Slice 1 | ZSDOS 1.1 boot disk | +| Slice 2 | NZCOM boot disk | +| Slice 3 | DRI CP/M 3 boot disk | +| Slice 4 | ZPM3 boot disk | +| Slice 5 | WordStar v4 application disk | + +Note that unlike the ROM firmware, you do **not** need to choose a disk image specific to your hardware. Because the RomWBW firmware provides a hardware abstraction layer, all hard disk images will work on all hardware variations. Yes, this means you can remove an SD Card from one system and put it in a different system. The only constraint is that the applications on the disk media must be up to date with the firmware on the system being used. + +All of the disk images that indicate they are bootable (boot disk) will boot from disk as is. You do not need to run `SYSCOPY` on them to make them bootable. However, if you upgrade your ROM, you should use `SYSCOPY` to update the system tracks. + +# General Usage + +Each of the operating systems and ROM applications included with RomWBW are sophisticated tools in their own right. It is not reasonable to document their usage here. However, you will find complete manuals in PDF format in the Doc directory of the distribution. The intention of this section is to document the RomWBW specific enhancements to these OSes. + +## ROM Disk + +In addition to the ROM-based operating systems and applications, the ROM also contains a ROM disk with a small CP/M filesystem. The contents have been optimized to provide a core set of tools and applications that are helpful for either CP/M 2.2 and ZSDOS. Since ZSDOS is CP/M 2.2 compatible, this works fairly well. However, you will find some files on the ROM disk that will work with ZSDOS, but will not work on CP/M 2.2. For example, `LDDS`, which loads the ZSDOS date/time stamper will only run on ZSDOS. + +## Drive Letter Assignment + +In legacy CP/M-type operating systems, drive letters were generally mapped to disk drives in a completely fixed way. For example, drive A: would **always** refer to the first floppy drive. Since RomWBW supports a wide variety of hardware configurations, it implements a much more flexible drive letter assignment mechanism so that any drive letter can be assigned to any disk device. + +At boot, you will notice that RomWBW automatically assigns drive letters to the available disk devices. These assignments are displayed during the startup of the selected operating system. Additionally, you can review the current drive assignments at any time using the `ASSIGN` command. CP/M 3 and ZPM3 do not automatically display the assignments at startup, but you can use `ASSIGN` do display them. + +The drive letter assignments **do not** change during an OS session unless you use the `ASSIGN` command yourself to do it. Additionally, the assignments at boot will stay the same on each boot as long as you do not make changes to your hardware configuration. Note that the assignments **are** dependent on the media currently inserted in hard disk drives. So, notice that if you insert or remove an SD Card or CF Card, the drive assignments will change. Since drive letter assignments can change, you must be careful when doing destructive things like using `CLRDIR` to make sure the drive letter you use is referring to the desired media. + +When performing a ROM boot of an operating system, note that A: will be your RAM disk and B: will be your ROM disk. When performing a disk boot, the disk you are booting from will be assigned to A: and the rest of the drive letters will be offset to accommodate this. This is done because most legacy operating systems expect that A: will be the boot drive. + +## Slices + +The vintage operating systems included with RomWBW were produced at a time when mass storage devices were quite small. CP/M 2.2 could only handle filesystems up to 8MB. In order to achieve compatibility across all of the operating systems supported by RomWBW, the hard disk filesystem format used is 8MB. This ensures any filesystem will be accessible to any of the operating systems. + +Since storage devices today are quite large, RomWBW implements a mechanism called slicing to allow up to 256 8MB filesystems on a single large storage device. This allows up to 2GB of useable space on a single media. You can think of slices as a way to refer to the first 256 8MB chunks of space on a single media. + +Of course, the problem is that CP/M-like operating systems have only 16 drive letters (A:-P:) available. Under the covers, RomWBW allows you to use any drive letter to refer to any slice of any media. The `ASSIGN` command is provided to allow you to view or change the drive letter mappings at any time. At startup, the operating system will automatically allocate a reasonable number of drive letters to the available storage devices. The allocation will depend on the number of large storage devices available at boot. For example, if you have only one hard disk type media, you will see that 8 drive letters are assigned to the first 8 slices of that media. If you have two large storage devices, you will see that each device is allocated four drive letters. + +Referring to slices within a storage device is done by appending a :n where n is the device relative slice number from 0-255. For example, if you have an IDE device, it will show up as IDE0: in the boot message meaning the first IDE device. To refer to the second slice of IDE0, you would type "IDE0:1". So, if I wanted to use drive letter L: to refer to the second slice of IDE0, I could use the command `ASSIGN L:=IDE0:1`. + +There are a couple of rules to be aware of when assigning drive letters. First, you may only refer to a specific device/slice with one drive letter. Said another way, you cannot have multiple drive letters referring to a single device/slice at the same time. Second, there must always be a drive assigned to A:. Any attempt to violate these rules will be blocked by the `ASSIGN` command. + +Unlike MS-DOS partitions, slices are not allocated -- there is no partitioning of slices. Think of every hard disk type device as having a pre-allocated set of 256 8MB slices at the start of the media. You can refer to any of them simply by assigning a drive letter. RomWBW will not check to see if there is anything else on the hard disk in the slice you are referring to, nor will it verify that the hard disk media is large enough to have a slice at the location you refer to. If you attempt to write past the end of your media, you will get an I/O error displayed, so you will know if you make a mistake. There is no tracking of your use of slices -- you will need to keep track of your use of slices yourself. + +Nothing automatically initializes a slice as a file system. You must do that yourself using `CLRDIR`. Since CLRDIR works on drive letters, make absolutely sure you know what media and slice are assigned to that drive letter before using `CLRDIR`. + +While it probably obvious, you cannot use slices on any media less than 8MB in size. Specifically, you cannot slice RAM disk, ROM disk, floppy disks, etc. + +# Inbuilt ROM Applications + +In addition to CP/M 2.2 and Z-System, there are several additional ROM applications that can be launched directly from ROM. These applications are not hosted by an operating system and so they are unable to save files to disk devices. + +The following options are available at the boot loader prompt: + +| Application | | +| ----------- | -------------------------------------------------------------- | +| Monitor | Z80 system debug monitor w/ Intel Hex loader | +| Forth | Brad Rodriguez's ANSI compatible Forth language | +| Basic | Nascom 8K BASIC language | +| Tasty BASIC | Dimitri Theuling's Tiny BASIC implementation | +| Play | A simple video game (requires ANSI terminal emulation) | + +In general, the command to exit these applications and restart the system is `BYE`. The exceptions are the Monitor which uses `B` and Play which uses `Q`. + +Space is available in the ROM image for the inclusion of other software. Any inbuilt application can be set up to launch automatically at startup. + +# RomWBW Custom Applications + +The operation of the RomWBW hosted operating systems is enhanced through several custom applications. These applications are functional on all of the OS variants included with RomWBW. + +The following custom applications are found on the RomWBW ROM disk and are, therefore, globally available. + +| Application | Description | +| ----------- | -------------------------------------------------------------- | +| ASSIGN | Add, change, and delete drive letter assignments. Use ASSIGN /? for usage instructions. | +| SYSCOPY | Copy system image to a device to make it bootable. Use SYSCOPY with no parms for usage instructions. | +| FDU | Format and test floppy disks. Menu driven interface. | +| OSLDR | Load a new OS on the fly. For example, you can switch to Z-System when running CP/M. Use OSLDR with no parms for usage instructions. | +| FORMAT | Will someday be a command line tool to format floppy disks. Currently does nothing! | +| MODE | Reconfigures serial ports dynamically. | +| XM | XModem file transfer program adapted to hardware. Automatically uses primary serial port on system. | +| FDISK80 | John Coffman's Z80 hard disk partitioning tool. See documentation in Doc directory. | +| FAT | Access MS-DOS FAT filesystems from RomWBW (based on FatFs). | +| FLASH | Will Sowerbutts' in-situ ROM programming utility. | +| CLRDIR | Format the directory areas of a CP/M disk. | + +Some custom applications do not fit on the ROM disk. They are found on the disk image files or the individual files can be found in the Binary\\Apps directory of the distribution. + +| Application | Description | +| ----------- | -------------------------------------------------------------- | +| TUNE | Play .PT2, .PT3, .MYM audio files. | +| FAT | Access MS-DOS FAT filesystems from RomWBW (based on FatFs). | + +There is additional documentation on some of these applications at the [RomWBW Applications Page](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:apps). + +# Operating Systems + +One of the primary goals of RomWBW is to expose a set of generic hardware functions that make it easy to adapt operating systems to any hardware supported by RomWBW. As a result, there are now 5 operating systems that have been adapted to run under RomWBW. The adaptations are identical for all hardware supported by RomWBW because RomWBW hides all hardware specifics from the operating system. + +Note that all of the operating systems included with RomWBW support the same basic filesystem format. As as result, a formatted filesystem will be accessible to any operating system. The only possible issue is that if you turn of date/time stamping using the newer OSes, the older OSes will not understand this. Files will not be corrupted, but the date/time stamps may be lost. + +The following sections briefly describe the operating system options currently available. + +## Digital Research CP/M 2.2 + +This is the most widely used variant of the Digital Research operating system. It has the most basic feature set, but is essentially the compatibility metric for all other CP/M-like operating systems including all of those listed below. The Doc directory contains a manual for CP/M usage ("CPM Manual.pdf"). If you are new to the CP/M world, I would recommend using this CP/M variant to start with simply because it is the most stable and you are less likely to encounter problems. + +## ZSDOS 1.1 + +ZSDOS is the most popular non-DRI CP/M "clone" which is generally referred to as Z-System. Z-System is intended to be an enhanced version of CP/M and should run all CP/M 2.2 applications. It is optimized for the Z80 CPU (as opposed to 8080 for CP/M) and has some significant improvements such as date/time stamping of files. For further information on the RomWBW implementation of Z-System, see the wiki page [Z-System Notes](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:romwbw:zsystem). Additionally, the official documentation for Z-System is included in the RomWBW distribution Doc directory ("ZSDOS Manual.pdf" and "ZCPR Manual.pdf"). + +## NZCOM Automatic Z-System + +NZCOM is a much further refined version of Z-System (ZCPR 3.4). NZCOM was sold as an enhancement for existing users of CP/M 2.2 or ZSDOS. For this reason, (by design) NZCOM does not provide a way to boot directly from disk. Rather, it is loaded after the system boots into a host OS. On the RomWBW NZCOM disk images, the boot OS is ZSDOS 1.1. + +To use, NZCOM, you must run through a simple configuration process. This is well documented in the NZCOM manual in the "NZCOM Users Manual.pdf" file in the RomWBW Doc directory. Additionally, there are instructions for automatically launching NZCOM when the disk is booted under the host OS via an auto command submission process. + +## Digital Research CP/M 3 + +This is the Digital Research follow-up product to their very popular CP/M 2.2 operating system. While highly compatible with CP/M 2.2, it features many enhancements. It makes better use of banked memory to increase the user program space (TPA). It also has a new suite of support tools and help system. + +Note that to make a CP/M 3 boot disk, you actually place CPMLDR.SYS on the system tracks of the disk. You do not place CPM3.SYS on the system tracks. + +## Simeon Cran's ZPM3 + +ZPM3 is an interesting combination of the features of both CP/M 3 and ZCPR 3. Essentially, it has the features of and compatibility with both. + +Like CP/M 3, to make ZPM3 boot disk, you put CPM3.SYS on the system tracks of the disk. + +## FreeRTOS + +Note that Phillip Stevens has also ported FreeRTOS to run under RomWBW. FreeRTOS is not provided in the RomWBW distribution, but is available from Phillip. + +# Transferring Files + +Transferring files between your modern computer and your RomWBW system can be achieved in a variety of ways. The most common of these are described below. All of these have a certain degree of complexity and I encourage new users to use the available community forums to seek assistance as needed. + +## Serial Port Transfers + +RomWBW provides an serial file transfer program called XModem that has been adapted to run under RomWBW hardware. The program is called `XM` and is on your ROM disk as well as all of the pre-built disk images. + +You can type `XM` by itself to get usage information. In general, you will run `XM` with parameters to indicate you want to send or receive a file on your RomWBW system. Then, you will use your modern computers terminal program to complete the process. + +The `XM` application generally tries to detect the hardware you are using and adapt to it. However, you must ensure that you have a realiable serial connection. You must also ensure that the speed of the connection is not too fast for XModem to handle. Alternatively, you can ensure that hardware flow control is working properly. + +There is an odd interaction between XModem and partner terminal programs that can occur. Essentially, after launching `XM`, you must start the protocol on your modern computer fairly quickly (usually about 20 seconds or so). So, if you do not pick a file on your modern computer quickly enough, you will find that the transfer completes about 16K, then hangs. The interaction that casuses this is beyond the scope of this document. + +## Disk Image Transfers + +It is possible to pass disk images between your RomWBW system and your modern computer. This assumes you have an appropriate media slot on your modern computer for the media you want to use (CF Card, SD Card, or floppy drive). + +The general process to get files from your modern computer to a RomWBW computer is: + +1. Use `cpmtools` on your modern computer to create a RomWBW CP/M filesystem image. +2. Insert your RomWBW media (CF Card, SD Card, or floppy disk) in your modern computer. +3. Use a disk imaging tool to copy the RomWBW filesystem image onto the media. +4. Move the media back to the RomWBW computer. + +This process is a little complicated, but it has the benefit of allowing you to get a lot of files over to your RomWBW system quickly and with little change of corruption. + +The process can be run in reverse to get files from your RomWBW computer to a modern computer. + +The exact use of these tools is a bit too much for this document, but the tools are all included in the RomWBW distribution along with usage documents. + +Note that the build scripts for RomWBW create the default disk images supplied with RomWBW. It is relatively easy to customize the contents of the disk images that are part of RomWBW. This is described in more detail in the Source\\Images driectory of the distribution. + +## FAT Filesystem Transfers + +RomWBW provides a mechanism that allows it to read and write files on an FAT formatted disk. This means that you can generally use your modern computer to make an SD Card or CF Card with a standard FAT32 filesystem on it, then place that media in your RomWBW computer and read/write the files. + +When formatting the media on your modern computer, but sure to pick the FAT filesystem. NTFS and other filesystems will not work. + +On your RomWBW computer you can use the `FAT` application to access the FAT media. The `FAT` application allows you to read files, write files, list a directory, and erase files on the FAT media. It can handle subdirectories as well. It will only see 8.3 character filenames however. Longer filenames will show up as a truncated version. + +The `FAT` application is not on your ROM disk because it is too large to fit. You will find it on all of the pre-built disk images as well as in the Binary\\Apps directory of the distribution. + +For advanced users, it is possible to create a hybrid disk that contains CP/M slices at the beginning and a FAT filesystem after. Such a hybrid disk can be used to boot an operating system and still have access to FAT files on the FAT portion of the disk. David Reese has prepared a document describing how to do this. It is called "SC126_How-To_No_2_Preparing_an_SD_Card_for_Use_with_SC126_Rev_1-5.pdf" and can be found in the Doc\\Contrib directory of the distribution. + +# Startup Command Processing + +Each of the operating system supported by RomWBW provide a mechanism to run commands at boot. This is similar to the AUTOEXEC.BAT files from MS-DOS. + +With the exception of ZPM3, all operating system will look for a file called `PROFILE.SUB` on the system drive at boot. If it is found, it will be processed as a standard CP/M submit file. You can read about the use of the SUBMIT facility in the CP/M manuals included in the RomWBW distribution. + +In the case of ZPM3, the file called `STARTZPM.COM` will be run at boot. To customize this file, you use the ZCPR ALIAS facility. You will need to refer to ZCPR documentation for more information on the ALIAS facility. + +Note that automatic startup processing generally requires booting to a disk drive. Since the ROM disk is not writable, there is no simple way to add/edit a `PROFILE.SUB` file there. If you want to customize your ROM and add a `PROFILE.SUB` file to the ROM Disk, it will work, but is a lot harder than using a boot disk. + +# ROM Customization + +The pre-built ROM images are configured for the basic capabilities of each platform. Additionally, some of the typical add-on hardware for each platform will be automatically detected and used. If you want to go beyond this, RomWBW provides a very flexible configuration mechanism based on configuration files. Creating a customized ROM requires running a build script, but it is quite easy to do. + +Essentially, the creation of a custom ROM is accomplished by updating a small configuration file, then running a script to compile the software and generate the custom ROM image. There are build scripts for Windows, Linux, and MacOS to accommodate virtually all users. All required build tools (compilers, assemblers, etc.) are included in the distribution, so it is not necessary to setup a build environment on your computer. + +The process for building a custom ROM is documented in the ReadMe.txt file in the Source directory of the distribution. + +For those who are interested in more than basic system customization, note that all source code is provided (including the operating systems). Modification of the source code is considered an expert level task and is left to the reader to pursue. + +Note that the ROM customization process does not apply to UNA. All UNA customization is performed within the ROM setup script. + +# UNA Hardware BIOS + +John Coffman has produced a new generation of hardware BIOS called UNA. The standard RomWBW distribution includes it's own hardware BIOS. However, RomWBW can alternatively be constructed with UNA as the hardware BIOS portion of the ROM. If you wish to use the UNA variant of RomWBW, then just program your ROM with the ROM image called "UNA_std.rom" in the Binary directory. This one image is suitable on **all** of the platforms and hardware UNA supports. + +UNA is customized dynamically using a ROM based setup routine and the setup is persisted in the system NVRAM of the RTC chip. This means that the single UNA-based ROM image can be used on most of the RetroBrew platforms and is easily customized. UNA also supports FAT file system access that can be used for in-situ ROM programming and loading system images. + +While John is likely to enhance UNA over time, there are currently a few things that UNA does not support: + + * Floppy Drives + * Terminal Emulation + * Zeta 1, N8, RC2014, Easy Z80, and Dyno Systems + * Some older support boards + +The UNA version embedded in RomWBW is the latest production release of UNA. RomWBW will be updated with John's upcoming UNA release with support for VGA3 as soon as it reaches production status. + +Please refer to the [UNA BIOS Firmware Page](https://www.retrobrewcomputers.org/doku.php?id=software:firmwareos:una:start) for more information on UNA. + +# RomWBW Distribution + +## Distribution Directory Layout + +The RomWBW distribution is a compressed zip archive file organized in a set of directories. Each of these directories has it's own ReadMe.txt file describing the contents in detail. In summary, these directories are: + +| Application | Description | +| ----------- | -------------------------------------------------------------- | +| Binary | The final output files of the build process are placed here. Most importantly, are the ROM images with the file names ending in ".rom". | +| Doc | Contains various detailed documentation including the operating systems, RomWBW architecture, etc. | +| Source | Contains the source code files used to build the software and ROM images. | +| Tools | Contains the MS Windows programs that are used by the build process or that may be useful in setting up your system. | + +## Source Code Respository + +All source code and distributions are maintained on GitHub. Code contributions are very welcome. + +[RomWBW GitHub Repository](https://github.com/wwarthen/RomWBW|https://github.com/wwarthen/RomWBW) + +# Acknowledgements + +While I have heavily modified much of the code, I want to acknowledge that much of the work is derived from the work of others in the RetroBrew Computers Community including Andrew Lynch, Dan Werner, Max Scane, David Giles, John Coffman, and probably many others I am not clearly aware of (let me know if I omitted someone!). + +I especially want to credit Douglas Goodall for contributing code, time, testing, and advice. He created an entire suite of application programs to enhance the use of RomWBW. However, he is looking for someone to continue the maintenance of these applications and they have become unusable due to changes within RomWBW. As of RomWBW 2.6, these applications are no longer provided. + + * David Giles contributed support for the CSIO support in the SD Card driver. + * Ed Brindley contributed some of the code that supports the RC2014 platform. + * Phil Summers contributed Forth and BASIC in ROM as well as a long list of general code enhancements. + * Curt Mayer contributed the Linux / MacOS build process. + * UNA BIOS is a product of John Coffman. + +Contributions of all kinds to RomWBW are very welcome. + +# Getting Assistance + +The best way to get assistance with RomWBW or any aspect of the RetroBrew Computers projects is via the community forums: + + * [RetroBrew Computers Forum](https://www.retrobrewcomputers.org/forum/) + * [RC2014 Google Group](https://groups.google.com/forum/#!forum/rc2014-z80) + * [retro-comp Google Group](https://groups.google.com/forum/#!forum/retro-comp) + +Submission of issues and bugs are welcome at the [RomWBW GitHub Repository](https://github.com/wwarthen/RomWBW). + +Also feel free to email !author at [!authmail](mailto:!authmail). diff --git a/Source/Doc/Graphics/Bank Switched Memory.pdf b/Source/Doc/Graphics/Bank Switched Memory.pdf new file mode 100644 index 0000000000000000000000000000000000000000..42db138c414ba3d84d828289492397fab4a599dc GIT binary patch literal 85522 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 aKZd#R=Dy=e=W@_;5aPFGZeZ6%K+QG) literal 0 HcmV?d00001 diff --git a/Source/Doc/Bank Switched Memory.vsd b/Source/Doc/Graphics/Bank Switched Memory.vsd similarity index 100% rename from Source/Doc/Bank Switched Memory.vsd rename to Source/Doc/Graphics/Bank Switched Memory.vsd diff --git a/Source/Doc/Character Emulation Video Services.vsd b/Source/Doc/Graphics/Character Emulation Video Services.vsd similarity index 100% rename from Source/Doc/Character Emulation Video Services.vsd rename to Source/Doc/Graphics/Character Emulation Video Services.vsd diff --git a/Source/Doc/Graphics/Character Emulation Video Services.pdf b/Source/Doc/Graphics/Character Emulation Video Services.pdf new file mode 100644 index 0000000000000000000000000000000000000000..fadac746fa210153d2de494590da9b8f25d1a11f GIT binary patch literal 68584 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 literal 0 HcmV?d00001 diff --git a/Source/Doc/Graphics/Character Emulation Video Services.png b/Source/Doc/Graphics/Character Emulation Video Services.png new file mode 100644 index 0000000000000000000000000000000000000000..4ccb3cc8dc8c7a1a59a2ddb20e3995badf7a5c0f GIT binary patch literal 58891 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 GxBd^^C%QQR literal 0 HcmV?d00001 diff --git a/Source/Doc/Hard Disk Anatomy.vsd b/Source/Doc/Graphics/Hard Disk Anatomy.vsd similarity index 100% rename from Source/Doc/Hard Disk Anatomy.vsd rename to Source/Doc/Graphics/Hard Disk Anatomy.vsd diff --git a/Source/Doc/Graphics/Logo.pdf b/Source/Doc/Graphics/Logo.pdf new file mode 100644 index 0000000000000000000000000000000000000000..0921f91afdbea53f88c55b391cd578de1bf04151 GIT binary patch literal 5672 zcmeGgTW}NCRVmP+0)y$8p((Aq6?J&H(%sc#EomfCJuKs35hFRqjxk}qx)zHit+Kna zWoQxz5Dfhw$s}e%AcZC{r5G46h4N^46hj#ZP?|spOvBVrLJgA%;G~c=?%B0uB%6|$ znWjJ98ENmHd*1ilbMHBMr5>-A(iLQ>^L`IcmYO0+g0GpIrMB5nSz`<%HzP4&K7>k{ z5EcnNO#4v@6AewkQSFm~i3EBgE`_-$%oQkeJ}faopdl!kl^>OJxB&~L063eW^Cj~otED)4LoOH~Nmg3540Ld6lV+tvMYcfX2dC6EsX zImX2&s(_Rv3?!{9Fo9|EtC|4SqY@|~5~gk$0w0g1JX$1wpa3cpn5Y<&m1P@|JAgd6 zo@24U$OYWXm>LlU(ruNM&9Jq{8sze!X}l0&!iWX8rxVH2Q$$`aEMWn8!{7i9X89mS zB{&+A<`6Vxl8Hn~z)U1domd@jwr{ye4qrTf&^wDda-O@pOL}35zjj47fripP|K+a*Lne#{7S=LJVz(xgF~1r@nee_mN}s)MW)9`n5MkwdB3!9QMd#X!PO1D;h`t=FK&m;_n{YpkK~D zv*$1Vm(E^VvNJSkecL}K-q^S6N5_pr)-PGxdS&(OLrbgIw?>Zbp+lixO$iNiaucW2 z-Ci|o*~lF~?Tq~PMf&ZzbKE1Yp8I8WcGgovtyOA0k@)nrm;BZX**BBBHY<#)%eRt4c|2M`VVHUbxy=_XXUf4dl&zCX6fdWEjfU^ z?%J~A%4bik+&FeTT{Ld>hTW^iT|VCV%FPADnP$)Iqpv*v!)MCN-+M9Ey!_;Wr8Oh> zdp3N3uu;IWRS7CyCBm;(C8@Tk2vs>iMfmZ`mtIAxC>0HY-LUN? z{$U9@KI(ytGQnfjla!gF45XgYlllTJX&z6K!Z5 zd?Ho&N>Z6iZ?R;gF5BcpjA84rMAYCA7qx3X*}Gpua6!9fhRH|zVs1Q#n=((pfqB!) z*m-rVC8(L~uqCXCNGt;97LkaAqoOro*D!D}VJnPfFwzhTid1LU7<81jfTT1IwM_`t zTKyhxk_f)+nmLjbvm(^c(4cED=y)N7D2v5{NIlZ)wSb`&8>14F&_=~^DGspGtiZ)2 z@FO8}WNP@hWY=hjB;QyX->9fl6w|SM1i=KNbOt0dg0VFf01h9=3cSeIN{6-(<($az z@P@UaZ8FI{G#iq|rHN0Plm@x4LP562&RARsD^>|rT-_-ELg zU}C_VRCoiDH5s;LJRg35$-OacJpe2Rr9%!{Ek$V!WSO3V5Vk6jYb8k=>V>ILLM(H& zjo*Ya4fA0=4GQ>t4|YZ*lJbYoXZ7%GTwa4>k0T!Eg4RN_%jtEyX|0>K&|0I{rPrFx zW{=k3b{9}anDaP2ikX?TvY`Mej*1ck7q*AtmPUIYA`sc3hV;`=^4!B{Y?$?fc_j4%t?3xC+ec!hXR9Zx-D!{{u zu`tsJx0^D#KqDj}jx$PzK5d{1KdwaqZXPBm1Da7qP|)hpLs!Pn^UzO%qREenqqRJt z6i_hsRN36L*X?o^nk}@OcIk~?`J$A5PjY-c1_=1?Jr)z4*^V1YJZFFYgNR|ege)>vTbgJ(38X|_oM!-cV+v^Bc}!}vdshVBJt1gU$0 uOe9T0n>DZS2`}{6l4}N#|A%VO=*0DetPzs;N + + + + + + + + + + + + + Page-1 + + + Sheet.34 + + + + Sheet.35 + + + + Sheet.36 + + + + Sheet.38 + + + + Sheet.39 + + + + Sheet.44 + + + + Sheet.48 + + + + Sheet.49 + + + + Sheet.50 + + + + Sheet.52 + + + + Sheet.53 + + + + diff --git a/Source/Doc/WBW.vsdx b/Source/Doc/Graphics/WBW.vsdx similarity index 100% rename from Source/Doc/WBW.vsdx rename to Source/Doc/Graphics/WBW.vsdx diff --git a/Source/Doc/RomWBW Architecture.docx b/Source/Doc/RomWBW Architecture.docx deleted file mode 100644 index 8e2c54c5884080d7d80f341fac8e99583b3c45ea..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 261840 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%0D3Br&0wtiV*aU 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%0DyPj>zS~rYzE=AY>7jrm# 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 z zMMLns$Gj<;3R&C5XY+CrmH^Gt^`YJ3|fOhB8X2AEjj`IG-yQ(T0;^H zqcuO&t`;xaDC!>)Hgad4*~SGnU7W=%XObALfZy59nK5%XF;(u?!S=8^0GR6c9<{aRT)8P6 z2zm9UFg{G@+%45Xwz!5mi=lP{|@I&}5+y{#gUEWt1k?vvSt)^-P>_SAdu5O2= z4qi))K6vberLd1a_5m3LNp1!*9N&iCts#;0E;Mp=stZo>u+19lcC*y-@3^`TVOUX ze_&B78Y`dCIy{DzR;}!CaNm%!CKB?B7pa!h^&;lyYMLlo2<}bR%8S;@ivyB%kLKMh zf^zMwVu@6FxRNTQcnUSq6iRA zNSR>fIB}l1NxX>~U-%#SCoj-lB3qg$OPA#)6zIErKp$;{_vlC@#^FVmb;=&<>KN)U2BwJtMY*IWMSCFejBKS zQ}Xn!)f5lk3K`0P0_eZ4svneS5N%1j&;b`Gg&=e28)gzn`p|4EeH3|oX{dD6KvQ{^ zv}^oOsfighwHry-IQ3NDMfHxKTkfJOnMbYaKqYyr{<(I?$M|llZPg?}#Id)8!cC1lkk05vCn&BaLzx?_73(OQ{upOfxi_F(lB4V z*r)l*0@b@a1OI@%+#fr3+{56R7Ct^;hTb&MEc^L-eZtolbzn0X{0@7<7#s!1!<*o} zaD^D`k1B&N!S~=!_#3Q`SRfw|1jd4qi@~_60RFP=yisH7o;9;NTaDAcBY;oK@L`#msQRQB97KO%@pQ2m8F0WRVF6eTuGWSYV_?ad z^7W_433wB!gO~lKqXcHk!+0dVTW_wimXs?i@LH0rRMshbafk@X3<9RAg*;9^ChjNX z%~DNyOJDT;W5s@=ga9>!`z@QsUswqVDhre?kOh;QWuFVr=r_7vKO9r1-}DV#Z&Q^B zZ0^*{9?9OxIN7(x!hFFiFtzy?-E)g#zXJT4a#io>fCpJbN0M=5D%q{nq)aFm;$5=RX6Vz zO1_^ep=zkxR2%h)I%F;dCiH)!qFFRZWq)=?FU49ur@znx7{IHcT1HM5Ket;mf}i3C zY0N&Rn5ky^L0v#y#;B{9COC@)ypyNDZ*It~=YRo5a?V&Z7lL(iiI_eFcuDO=%oZC2 zeZe%bp*R?gFNM}Y8PFl96ynaN2o)tTb2yOzx+?>Jq;ZBK7#Q_KnGL zL@H5xR&J1a>p~?_M;OHa72B~;H}7q<)yDftLu6?M)%sR_RjLwCf4H9baTd^e>6dWZ zFQI*3(pElhEFbqYzih^Xn^$Y%zQhizum+lnPPv()ePg-evZ7h>QlZOd_ADwR)wHa0 zCzmE$<(1dO>b;(?A?R!d!^-2xynDpeGNz9_OE!>T*)4v9y-aDNEP5zoFEO_Z+2t)7 zsrih+VIzn;r5~#Yz@d!-_m2WQpnBh(2&oAOV)D9_ts0auHIf=nO{<7AzXrvcU%NP) zil+XeT!w+t3SNhClj_I8ig+CCG&!J7xsBLHBRu`bAV){mXd?nmyipa%K&(@(37{(;z|gSb33=q;3c zG+6q!U@A!9Hgh@L3GM<%bI-VsoTe5uKiY@Kb54UIAOeyk^Aj6T6;uy}UW?IB)-WFQ z7V3l4ZrYqga6)=Ku_bf`ya86g`S58NT!CBQSMa~E0Rkh(kfkUHK{n4nA${|pYw;%J zJyJygLzJJ_fMv7M$+ExD@hF&vrpstTDcg;zcYmWExlI>8Jr-&ULik)LPzOV2VvDi0 z*fwlewcw9mQ4ju{^FDvj>5oh1uL#nW=u7Hm{qxB_ArViz!i)Iw?TidLv5)2q0k&e4$+^6kWx~u(Uz#8H5A!M zw&#BMM1ubFO<%LB#!$2N7a(5wOI61xyOcnE1C>%SbOg1#yQ&ey*!A{or+TPM+;8+f zs*?i0L-T12N~5K8FufOg#L3S?2k4VDMK{vzbo9p=6MCG+f!l6i46k?u_KXMP&qOkD zOe&Mj9Gotg&QJb4X8K18MQ%TDp7y;vjk`C!*u?&2m z>o}0X9pXy4@z6Ku1!wLh84f-#OY=2>WYBc1@MpXjoWb5e_b~|OyXltrLJWB0Hn1D) z2hWBh(<+C5s0&K~0f}<=GXXBN6W}eP{Sr~$%dTmOSRTNn2*06PgKR}24r~AquQLE6ygdE8B8n?kVi?Zwl}Q^E`Mkf$w1-z(eu&EKo>x zDz1@-@v92nTDWjnLg>4O$)jVUK-_^mW&v0Q7Ukwyf(T@Mj1Ty8U}W@xyogoikpx(I zyeQN>GGyW5JYsxI@Zo~h=8;+p4(G-9M?U5geXACa-_bs9M|&MeC9;WQ#F3|!v1$xV zz|W@Xy5eM;iE9S>CfzRHn50-H^D3OX^4T8Y8i{1-$~M)mDm)%Cl1RRuE{|^wkB_MB zTXyNIdRwLQ@9=Lk%J`9xruUVxlFnC`uZk2_im?iDB^A0>Fv79Qh1sxm%3(|qrHEI6 zO^UsW9Kz-t__%VrS~Zz94wJ^62e|oZ>W)mwedUk#8KpU5Fm&dFE{xW$pqc7S_3a*GMPfA zf&tf<2Mn*cT{ksAux)C~2r!mSw=p+4fT(^OlEG?t09)hVPzThBd&3?dy9_;vfbHl6 zE(4jz#c(No*9F^;3G~{PW!xq19@oizFYwN&K z6W16&lT1mp4osXn-L4zbog9W;X*`o2x41Suen4izZPdQ7<6B`uZN+Lif4gf(!x}pX-EV@AQ`@|4jH1L33Wre zkSVWTgg%iaqXGr+M_cE)Df|>~(WB_?b?FMg%9M)iH4O?x!773klIguh+fMiaFEAAd zuseCb;DzTfk(v>bc0O3ma0P0J>jqqb%Vei&Ha3SKTR4E2G8mIQ>N=013aX%auX_-XQFJo4_ZN zEF>$)Yvcp+4cSWqNI6_79T+0z5AN4ONlMEd%2RsXfmqq&4&9Eo^@Cp?uYRQrYnx?c zs4J0#EG;)|{k`I)S7VU?;5A4CF-9h^pBWvNUnqemE5HV;$~Sim8O%Hj z_G_65W+--!pYG%g1mk{nFZs>>s3}}HXFp`hWy`Qm=gXG5Tf5ReIg53i47H@)fmK~{ zA8`&hZt`Of`yq!9n@b(QLifbXnDIVh^U1Gtq{eo}-^~ZC_+X>Or$v}T6NzN5vk*u) z3Ga{^(0zAiknX+7m*;5JE!2m~twG|TNei^3ehYS1+^8sZDx~ZkjgDUbYWl&tH>SWd zQ1&ym4JHOSWtliRi;KL5jGh$!>Dz$8ntgwNxUaFN#_gP-y5R7^5kq`F*mU}eUj~&8 zpn68W48Hiyv@>L(o}-a;(bccKkjxQwGTa!vRBr6lJ^YY!O4rgQDX!}lhU=!Ryiu`k z;p~)^=RdDoXmK%R(~>1`H3vw?jWxCiz(6pl4_+$1G;>{)zUM04)0KahJBtm%R+)SK znfYfX_|$FYZ00=6Yf{vtsK3iRf^K*Q&W;6!`&OyGH`wy`R}i!cHM`Esm6pn=h^r zJ;louLLFNtV0$e_>LWfUNX%M41KPej@MY+t1FPe1K5ShC+>&2*%LF=sF7p*WROw>prCQQZrL%Zq zkBy6D9Hzl>TGB(#1yPrxEG~vQ%RhDDXe_!B-Gd(W{M#i~P|e2|+t6iwFY?W$FY-0h zKCPFEHNC8++KCgD-ZMb@R9Cp)@fotXWnRVypI{xqo|ZqXY8@~Al8XtxX_s9u3J<(~ zcoDuPq7MRmL3ot%g=d+ZyR^jY*lzF{IeYo3Szp6!ZQ}>$KifT({q%|ben$HY$gu0X zwTQWWrH}r*c);e#QaXG0sJ?@xac+Wr;ep@M7K1O_+>hi{s}<}vp*rni0yc)j%^2p2ap?F|3G znX$jKOIgjs?C>YcH-C1#lEP-aKgS8zJncB7deD-&zdE;GoRTb8KW+TOwu19yOHj2_ zEStLkIoxKaKRGeGz9Tc>eH9DpJ7}nlt%K4oJ4%rybA+`&7w~1gA^liO@ez)cSzW5=lO= z@w=@T<}BGG?+0V?Tr5*cwcqt|p}Z>#q8^K{MTxyLG{E8u=2AJ8abaZO;zj3dYpD-v zWr=Pb9}GbScW$GS$nLgBl9KNBo2~f3&(5J zWegYw(((l?HvNf~|7iHBzYku(yu`r4qNr!TrmedWOAXW*9f@93-Dti!r5VY3;b%m* z18yyubUd1BSr#dE$tevPlT$i2r_?p4)GeoUkNYs2@j0avmgnb`dTh%n^~@=qlv65- z$_$k1<&=8mluj;Os6ONP(S&N=_-{nSI{B*QrvFAnEH_L)c|*Na?x1|3VU&c2TB(P(cZQVLP@0FS?)Hj1^lj?PRTH|G0=F*z&WxgO(P=}% z=wSE^>_7(dtD>C3<&Y4qYFF)J1 zfm_H~NQA22(6AfY$yI5CX3pIrL;DT%vNr>|p8X^im_l~YL}&(tL$MHIegV=ff+{s{ z-hppJUrbEkUI^SW`W+bs--0tzo1*x5K&v_*PzGj&Y77rmz|T*`e{dNr)jlX zuvm*54O$XK7X8P;TD(O>n_C7NstEaP>sU>n-^_s$LK!+m@ zWKW-F_A?pd4d5sCN2ckRf^B6k75N)|S@9)yQ@OL@b^ZJk!SBWHZK}?PdaU zV^C#`F~sOpo?=QeI+=u}wJz<>0r!la1*UJt!f|@W_>$?C2ouP-wav8J6kdDCl5YyP zl$Hy+wL1q4w%oNipIc*@Ysnb@Z7#pr^7SK7X*p%dZZz}tmTbPXoD9{u@qRp7uG8|1 zd1lOc*=c@1|Mm0>KVd)eO%4hSwDOn4{z_l$5>{H?dir82cQujf9~~BWxb5nL@6bdO zW&DaTyNgH~t{P7qBI-5aL}|Gj@)Q6zSAoGqsxl`+NBH2NIBKgV5-*ObBtn#<63iNq zq|DZomV1Y~X>8x{fL60uLsACK0j4>jLR-dw<^+YdRkJePpY+vU(n9t0Y ziw=-=+TcuA%7qNhj3Lz_o#gN z^#s-!eLfYgFD>tlTm&9d0J#VZ*5B3V?AGZM^~JEB(>d^`Qh!Q6s>n>&>&4l0X?Y*J zi@*#TETjiAWrYShk!UWeU~&l1T%=%H>6In^tS@tkfo!|Cy9gX+Qd!{gBVg;8;Br@^ z3maS>!>U8r6Xhw!B-Y7TTHZI01$GyKdu)L*vPO;0Mp{uDZHk1~ZLpJiQY$}X$~T6a z92=F$Md0~j*j-Z&r!ys*iW|XJOAh?0G@UYy5}PgcCULf9s#s-r5wM<(G>|U?2Fn3W zv$%pU(|~5Nf^W5~?Cy{G@|XBc-31=)E&_-70vx!g09MBbd$}rIuwbtkOuZUE;gzDy z$DNd=UY;-bao;5(13V>p-+1KqQSKn3@iNPbVaP=!)j3T$9zTTF6XI~(F{~f*6tFo8 zfWdewmZR3;KFZ>-twf{}6o*yfA=s!WGm(U46H}uEUUm-w^nrMw29!k@hy!$URE4Gt zUKJX3E3q=cU+b&6q}i0vKS~2^OJwMXq*SfTBA^9zn&5O-(nTAb9-|G>o=BIckV#r6 zvNYX0Pm4SRfX!X9fQ;0sNgr}WCWxjY;mCp zW*wDC73Xc$=TM+HuaY`NjoN3{*HhX0srv-J?Jfcf^#f^8w%edj#GCh3&^hp`pw+GV zl|}xHFMWyLROA;$1G|gBVLFv@F#rbC(ZMCItP2xd62pWrCracgY!c(dmX-`ai}c4C zVDq{xU?YE2vp(#Kau98dgg@KZ)$Eh1^|!eQAP)gB*m&2NQ=>B`8jEYU znsSVwxVF-G$~dagY^pbAo2E7j2DZBhEHn+YfHKZtIzTixR#?j5Rbf%LnpTSad0)#V z%O>%lC=0N=2pqN)C|%@$2X&UC&Xw%G$#^Lw6Y|PleRQrh}|mypp%da zw2_O{S|9C-^k@=9!k=y0)!HZNhsbZu1hJo&sH#L%)Ld~ESQUmp6n}LB!R5s^T=yTvzp>Ks<;y!=cSAR*r zY2WZD{X9Kbu76LDhE%DvOCg}^^dPv%m2shii(=>y`b1F*BTJ&4n9`yVb{7CpMc<K*0b5hskI}4%?|*%0W35QG?mo=gYf{~Tw7r(gI9&A)u>w8=x^~gT{3NI3`ULs zz~%{X*pzCSu0CMCVd9n^cje2BD~jwcB10@9IQ2-fIPt<#@u)lt`Uv!$rOI;8^4{H^ zyO+C^jph6E8QsczOvfVl42R~v3;3~EgiwA6%Ws{Eb@m=z&fnr6^AVjfbbjgGp05VI zR}y3OcB-ptlftabZ{4JvGGa`3rMJ>BQaMG5jxZgF=g8m6HC!>3 zEC1nAftM+ZyQf~(4YHiZ$9Vb^zW614Q&@;D3ZI8B$KS)zF{ax(J^X<0s%C#`!*Ajv zJ-31~93w_diXl#Qb)1-@$!`@qYQBpZn@8Bs%2nSZ6htIYYYwbFK8|wH0F7qZ>)SM^ zuqWa}+IlQp3mns{U+d_7F1BcO({pENcWAegIocIbb{CN^wcuUSOxA0&$*Gw^m)%G| zvc~4oyO_i&OBgb zYzhiAtyC>FVv;KzsYwWn(W_T$PK2e<`5Gs>blTy?r6}(D{(e4lW{=ACphcEMIlrL-!5GzICQ@?b+KrRnqCRN8|je8$$kW6b+zw5HehJLvQuPM2P{<#M4jkS5#leW}?x-;Dy=<=fLi5Kh6)Sb(_`CH!g zkKVqJd-<9(oR=Md6SJSd@$u(#9#%4FQuezulk@P~wtWwuIfTu&|rwrP)T*7NhR0LiQB)dR~8Rl)m1H(W&T5$mwa zr$2Z2?BP(;GAB@tC4I04o8nz}rW4j18-&RT46XWlD1VG$emXfP)N`(y_*QxO^lioY z0)|n7LEX@ytp;UV-Uo!R(w`D`#(gsW+CThkLcU*^*eW4A|fWa=iG&>2krmZpmCi-px z(1#23-J*Z*o^M5K>UzYk*Jf(W-CaEM8>oF6uvA;E{Y9hGwl(@jqZXvHA4Jf<$M!<) zhg#w1qEF9}XSKKIp|e{J2>>15Y9QMh3$MRIzC|t|RTQ~}+)Ms^Y|)Lq9C?L=5e`c9 zLdtL5WUBR4+cGdy@B2d=HAYc%eIxY|^#vtosms(2YR{&U0KJ<&`d#o9H;FDgmAq|( zp46-JcF|y`UQM?(&bw~k`>%7R`_Ue$JGnIa4f^zQrzJ zDHd&I^Ylplo@1}DpNoEwn1n{)S2@{;8$tO@)0;+MYHI`~*Ebs5zmk0)vwv&Fr!c+CA5QEdWIJ&+ z(H7=x|F~a>zV2Tm#H!P|4@39XgcI)*>ou8#zZaZHW9Xj+_Yq4q=#*EnPBS*arG5AR zusF?yH>Om+R#9H4`A{RgEj*a1Iisn6U8W_gPshmJ$(_}wwX2qOLoNXGwQ}SFuv>dU z^Ao4Nq8%UT;Uo47mSr!q zH`qN@7YPdev*67x2f7;Hi~IV}oyZ?1n8q2CE7eN$&w^X$7>B{3f$ZmdV@*$Q^|WvP zf9zyZnXZ|vP9pETayd8L^uB4mCDW8rzE_FoX!w`&h-Pihxk($;9N z;kaS-N2#;qXAU`$UD!#Km^JU4p|qVWl0Xipc2Tlla5dGI>G3UjmApefC4m#AqOMV5 zLmKr4?q9NA4>IA;1&W~xN~-n0P&&PE>^@KXPCK;G4$Q(zxG(iP^ybF%bP2rbWHgSY zirtwvF$2A(s2`X}$I@uyYc{=`?zuB%E*8Fv3q*Ljdc>-ajg4L)oPBx(zJJs!P!6uxevld4HXKlO5V) zcY!!5TV#CQ=y#OOGQDH`yz+ukZTVnLWwoi-t~I7HkGvgBh8`ySJ^|URgU3Ok=|fZ6 zjZD)SQ+=JxV);OI`j$K2Yu9PZDhHp5mRJjzZ&_u@w(PddVkUquiJxg;&XZzd#+)b9 z;0zGY#C+dm0CtW`KF9ff)p*WXDg;s68!TCc%?q;%AKuLS;&E(slcnQG#zP)|QZGK- zBw2fo59V1wa%PmMYF%;&(K=cU8m3?i&ub zSh5yoB~?5=cjU6zF=EHlst1SpqK1#!dThCo&X0>^`aL}1qHa;oFfVomYBivoQcQ)9 zZV-N9={OkO@27G74Map+&##Rlg+d@+dXkGfc`p7OS3^kJ7I;ehmR4~Ye)69igrsx5 zu)lbRr-=5xa6ilZIBU;<8ZO}A(JZ}4;1}j5st}r`>lCuN)em~^@3Mb?Nl!s&1e9Lk ztEipj7vfAD=gtX)VD@T$>admQe6i*IOjhTE*Z|!PVQfHK$b{n!8~Km;HYLjszRUvw zeycTZ_II%XVV?#q@B~Zzjt9KcPq5Li&^2_2=R%hgft|q)PXQP{ap60zos!PXJv+vq zC&ms1Zklf6$8^4#E^tKpPb) z$eJzy3x`~HQpk3ATn3*Gj{#xA>s)7pu&UuA_AB-~#$#${Wk2O`<@=+el=Bobe{R%e zC^srUQhuQfm3`-aB5lYY3}LPR+te z6Vg{r@fb*0j~7!2eibggEstCJUPPRjvh5GYJe$z7-uSpYaT9fGN zC*1;kXYDZ^cYUwLHNZ!JjXQTlw0O38y3acA^$u&^k$JEGKu>20eAa!x{=*MOtoNmGW^$J;T^@Dy1Lko!hbkH_I&)$K0aY_vVbTzxdR$ zbK2JdZ?F6{HURAuP7d0?FH{y%{Y0A9)_X`N5Am@dk@HvvXDr4<%nvpUzf@gL$uEK`nzAG?|Jr( z--GtirVKyj(Nhwa5Y_KcQ&7Dx6)Bvp4Uo+r(c}>(d28ps+HEN%y$SgoiWr_-MMX+> z{IZ0|A^_TnvyS*3(Ux)j>nmJMI3)sjrKl{&o?{sg#J{>Fg@*T|&{09C?-`<*e{O_*{006>g z0fBS$vfKBCX0D5wb2M|&UCo@6nZwMS96mUkITth6&CGR&53XiTVdmV-To3rr)6DfU zbG^-6ANb&I=K7jBrI}N~2M;snY3BNwx&CHO;%(-9syJIlVi=-zW^S078&lT^<5a_3 z1+mdG;M$|N`VE=TO?~6BP#_dMxzhldkuCRw8? zzM!hHJ4~ANghQZ)VZ$UZX)}yJ72Zc$v942L*41s|Dqey4I{j7r2{8Ch_L64! z2!PY`_$Wr|OVmgz1gOWb-r{Jp8{_(Sc@;zt4%xoNxUDSEyyjDjqy)c+_y~VYI-^3F{g)p0Y4+VSIF` zp#H)AhG>lE!zG*NcdBXe6Wn^3M2Z%uk<_lu6)u_EmHlaFpZ zo}duECVzs-@Lu>p9JJ0eb912%LXo*j2JuigCKZSV3!Aw)z(j%sFqh}1f#m5`yy+=F zLUfzJB~1b%ZkRyW#X&3)Mhe7U0+fgZCNdrHE5HIU8``}+sa3oS=7o*GbaxsgyaZMW zse@1=kOn=cejQNB&^ji9gr>$lORD%D*Z}OeW<(BxI@^iHBYT<(Ihzfxr?qhC(D<4b zUI^$Kz5u8naJTQ%O#-00(;&noLP97Mi-gY@+HYkjBN;4s$U!Sy#izSq)or5N_w~LG zb&W8R7&aM!0}zP>(*^BOA^;D?weodtYBLv&>e=-typRIBpFB1CD(V_D1V9d>3MF1L zd!%WApAJ+o?j*pIARQ#Z6dLAK@x8E{k07%(d`s*3`7W?3wcTl;flv*=72X6D2&6)Z zRMwH>FhHRMmVyOU{8RL&*MJd%!WPS_E6D+MjWm$)C^CvGg>~1?_ynu0O)Eg^?_4~X z3mTxf-7(YC^$tLM?YCwcAPosR^Ae#%fS2HRYc!4nO8}n^(qPFi1biZln+i)W zTJ?}i5P>C4TznPZ_xh9ZDgetR7`F93NaZ4#gH3jnZ;Y+xAm`G+cvR?6$>0HZrYmpl%GWq2|GlX2DFH|#3l~bsZCaTT}_LX znioq%5}`;0ElxXq6rfPAn+PB`W2`C^0rmAK54h9M(|^v;Br8LvxrqH{ZUtzFw<(Sv z0Ir*$bv4Lvi9o=spe0d3op%wpS9p|FByf*!;+6p@2g*nfa}uJQU`FJ#oH}F#%Qgw1 ztd`o#7G)!}*t1db&$8**u242pfifP|swNKoNn>_DOa$c5vcVzsi^P+FDIRIJiCbV* zFcL=uRDYr1@uDhrDQ{DhEtq?P^oo1z%bod|vc%_{NV%7|@ z>jweq)F;8Zm5ll?c>fTNfMACk1uGae7q&wZ)-vuHG6L3K3K_mZAP^!wt;k96nOb5s z#A!_&>=7pdl7|hdYkUi5%>g{@WhI;lV{7NYj8a>;^cGGED3C%*97J(%XAs@>?YqH4NnWh54Tu2MYghG^27~r)~+7)1t4d16DegQz^ zfGe5?sza9a<;^( zTwCrPUPghgD_ZWuH+`SISqfTbKje}CdTm1QSHStVbtD}LbIAZ&YimHyuULn6=q?;s zrEAYU4C#Fl#HK;54PVg2E$pC|ap)!LMo}je1O-KP2GutBZW=Ol$kNUOE2_AqHa&-; zo|c~rlM09Ixxo=s3zr7fVrSV}#_ zXORFTH*OyCBp3z+BmbO$dd8g;smTtggSabhpFJQL@GKxeCVeEmTl6sw2aEvCM-WC0 zXA=bwgXS8OtQaqdIr9Q0zwC2qC2s3DY?!Fmk4Re}2IXZ-Ctxrud z?$0qBAZ8@Q^m~pegqXKp!1$_Phh3Qm5 zjPf}~2GeN?=*Uk!F;?Oh*b%b&XNmA)F-k!KauSW;j|jRioOfwtM94YL8J^XP@VHo&~P4e2PwJ}3n~ zq+@v%!dPJt)Au>%D#Xl&7>{q0db3TigboFiCU323_dXU!r%vN5Z&wM zBZ--FFmqBk*OZw#uRmYqaQK(29D8PVKEnhFKzHjZ$H!=uqoU&~hfOC)A05*bR`K=K zZEX#04^bNGIJUF@NP#uh*g?WL*x-i;fwl%oC`>{wMv7R6Qt1FlVgGkQ4a4?Vy`-j~ zj!Q8An?MaiJ>)QGq;2f`XNyFCTr&FmHHn(WhN*C@AKY;<>VFd;4zEHE55B-*%McN) z`mjL>S=gGox*x4=5_}FU4V@)oGuO$?Wncnm!K!%MU(+o&J$=C4e00YRj9e$UcCD3L zyH$Fp!PkjT?y217QLFaF?r*!LIwU;caKLF<*L*YA1gTx?8sT78#=Pw%g>B<4IJjs5 zZg7;C!b*QVXkCwt=;E^7S9x>G)Y)osVu2%_ilr@iv74cQcn12CK0n96-Kdh7-hSFEe*sFQ1z$@8hprdHcRc zi(rD6G%Hs=phq`9GZ%YK{&}vPl;7DQ_c3$%=j31e2vR^&PnSS5w|w%Oat6-)_L{k} z!%EP4^``R_FX@Frf`5P?AHc!W5Ht7qv{EG)CIBZbTvQ7nx;n!Ox^Uzb0T|%p8D{22 zPBnT-j|Wfg@9o?pypz`+;hly!8M0Xah5v`3jfdTu@Q(`z$h6dC(f6A*N%BKmWWe9& z=+6NVSER9ZdFXu{uyv71z}79K16!w~1GesRJFs<``+%+6ECjZ$^CYl!jpe}BZQcd8 z?(*@o^lHVnuFyUtefeGv!|U-Y7S2_@9-o$;GVj~aj!-;g zr|paPyP={o;fsOr#pw?55!B?0LBK5`oJzg|XN|8|(+{)GqBEYY?b-nKX^!FT@m}Ty z*}w>Zh83k9usZY&;1BmuJnL@)unjYijJj#IdwV*zp|1`9U$DV}0|(T9fQX2QrluyS zQifsv`1bDvlgR|xIDh{9zb5^+L9f?C8xR+_eED+rMd;C^hb=>jq9DObZ~rz32nc{z z$OcW*lP6F9m-PP*K%t@NR=HuS$QpD2l}hzoZU`^E{o4RC$lB$GeEuu)e+yuO|CO75 z>E-`tavP0Cn;=lAzg=!yhJOLj!oC#cPvxF5W5%dIgVCc$U%7JSr4*orcy7Vhty>4v z`P=3GYZD1=>mN(>CAlpY3vcbUSN$0b88W1!Ah!Mp62p9La_e-u|B&1eN=r*&&bMye zDlRVm*$NN?A0ZEpj%ZosFF+!Zzz!DP?6*Ru6>Rqq`u9gGCeOja!2xywpo84==g*w~k%{AoQ0_VQk|XwkA|%Q}`f zOsdohP?67xVMLqUk&%)A3Aqy!6BP^#Gn!UOR^D6CNVJ~h80OPB-m9OfxRMxo4-5<#zwf%by2p!=@O`mjzinyYc}$ZfVXeo!tq4u$g@Da zr>CdUy>HyO0ip<_c@VZe9vS*DdVc=Aq2ZAO%0*V4ot^M^=bZP@(2%ZoyhtXKB21!2 z-X$fz(|Huuv3T)faAE8ng#xv=U+k@0x1_ycf*w73R8vy}>kCzdCs2Zjy?y&OJP<3Z z&t2HHYZt_%$G{ta$*?qie*OCO!tqA2(+cR`61LU%ok%3`MxaZ@J~=rFeFW-wxN+k~ zeEmCj?u73F2I+Jf77RL^rVIh_uBfPhm}m%SI@k`KcT-bSA$X@!sj{-N%?dv#;7xg3 zU0sb5o12>R5@SCHg9;OtFJF!}hCFlzG^PkEmJVPw3c-79Yz%$%sta`KLbH*emccI^U;$I#v= z>*2$P@X^knKaVTiG^(wP^3RVPIf8PZJb4niy}gC%?cLDOP>A-%_Z{r7wY0Q^;T`;a zy9(96?{nwQ%|AOvW-J$K8GZ|daogS9jljW!2cg)}A*j!dcC50p5@IX`fLrX+=V#8G zncuwOR-*rVc@GZ{i~Xkg0$|g~8-`2gjUkK6e(%|{Cl~J}OPm$=7_ol+`u6trki6w# z1b^)>1*lF6!vhe14HYxL+gl#aRG+_B5aVqttB4#XCMMtxq3%uoIjTv9Z!X>$HB*56 z{M2R`Fe^G}0P;brz-yzw77K4bAWx_~A3Meup%;Ysyg7i7YI6lp#rhY-tjHT>p_viJ zm6aWmcSfyg95P|qvSoT&TQxJMGw^XQUApwbg$pL$?95CNlJ|rHsn9`0;N81-bipvx z7mWjNoXS>sbJBsZv&_^AjxScPUJYM%%a$$B-cwUke<+9@L!;`#MMXvZ{rzj#uI*9t zOep9g2P(0EI%YoP+*czU10jvYH_$Bg;dh2$MUpW~B79+YWR z=<4d??YJ84LqLT2L}Fcl(kWbfN8k;~y*@yc&Knu}ktTGfmY5UX0pk+CJo1SRgE`?X zLj?N^;!WEkk%>ftQ*hl1)X6T~y?b|TY;4>#w4@1NAnmRDYb7Nm7^oxudj;xb7vLIl z3dL_|xo~(J`#IcNx*3GtEfAYdr)j}5YSBkVSrA*`yunOwNPQLuv4ewyoQL6%TG%gq z-U08PPiz>>32%KlEhKM!X2A#u_@xblIpLj|xu5F7)YOzrG{k~A;jJSYZ+K?|0|U9` zLSupO&i{jU;VbW`yk%d{)~#F1%gZwgdGijQ{scHx9~oZW;IU|t^HUfvii?Z6kyD4h zuP46s&}gx&^f2)5>$!LDUPVQPX*u-oRjXFfwUFz8;KiQ>oPE&71$uu7~1!`SNA*E-EUbZ%ugj_0-qb$HW^$7S69#RaN12Hf-3y zDK?p3gMcf^zHHYG0}+;f{_NQ^@H4LaqyJ;51Y7F2uLrLb6K{4uzxg#pLBN#+O@enf z=H`W$x2>pu_Az9^{U5Jizvf~Lg}FVGOGW4bxQ&Ci#B#TeYl_YJ(>@-wwzm4^=7o`W zG<^8*f%P3zd-r4)8PULhDxjP338K91JtM@(TM!5D;H}k&f`DJzFqp5rgJa>ddgm;> zTaE%S?|Em`_&cLa8TVD&YQvg$jtUmZ`|B4!=a^d%c=V2LxP6 z^0Z^Xnl;YJ97cF^*7xo!1i!9xCLP z%Vh4~zn@zuCU6eI$6pHr*a~iKm{vbu=LnSA8|susi~^LIR=)v8n0g)o-ZHtJ-C!d_ zTHa>Vj%{6-`-XzeQ~)wT{#qDd7~S9B-`3W~Jx{ph6|O3yFj~VC1nLyHn~_N%g8-i} z`N+r!v%(e689O*Qh+C$TD@%cV?pHJ+>#xaKHW2`3!R6z{A%Lqq5qUi!!l_hhL}6TI zD^YqlGFKPS(E)9mnnbQHNp6Ia_=P|2e0Ek5~urtlx6}u!8f1 z$74HZ=4DZ1ee;@6aWSQ2mk;8ApkJlLn#6V005*L000#L004Jya%3-b zXk~3>FLY>SZDlbocx`O#SxavdM;yOb>US9J9sGzLk_ZRIjtwmYqQp>f9Pf^I2hZ-T zX2uD=RdB3SsVc2{C{k}dRBe$!>VD@+L%jm$pCr;3D2q5s3)` z`b2KwmKQ0NZdEGMhh;3!^OPj8H{>G53Z^2g1Ogue-qNf zL4D2A+nzG-GWbfA)C)cnhnh99C=50j)$~J7WQPfKgjvf2IRQWJle@}83`+$YEw5@m zUS<1Yr66Kz32lk4XFfSyP7sXhhE9Zog0R+WY+l$c_!|IIi@0vL+v(N{eg=SjA1uvu zDPtSGjaqxkvjob9i@ZD4X0>7COZ?Xs@SE*+ySZuM4JaEn7VsO@^~O%!!W&RFY%c2G z-syDKExZ9`!}SGx@51JK!^Rs>#Aq^FKnipQvTI z7UMfy^Z;Ojixo|fnxtfieZX~aJP;IX0eFkx(oVMI%Y`K^3rSzlRJFX1Qw$X`gS>e9 zxID>waKyDGBK*C&|e(XnuCVteqGfEM5aULN1E6h4f^SWyS?Y7|?*J5?@-!`NXhbYE_Zfs7ha@2i={-Io#6fnOQp>M<)E8Xx zp+dJQYGdkjNuLg^Y?={Wp)tf|;!+UeZTV*J7HV_mV!um{Y$Q|#W-gY5S#G?H#|ppk&Yej(yT%Qz^4Yf!-JSKFY}q^T_HxzCe4}25n{Uq@ zE&}@QcjsL^PWA~Dgai7%Ilpht|M}*;te(%lCC|FBIf73Q+J;TM^wd41j2)^8BiE$q z-xACVda!6FhNw8?rx6TuaTYEV*o=|j>JzG>!w9D!re-9BGG`r1lyV7I3$yIxtvBHP zp|Z8+^im0EtoC@2Ew7a?n*|#)3(bXgDrikJSXJ2Ch0_VEWxy4s)r@M3(h8HE(##|G zCe#hW`lp22dOZ^jiGmpkwBIuZ)3BU*h-8EVlE+Bfy=X|y_-zHZ>5Jp)(l#~QQ%GAS zNM&)2CE}*hJ57|P3}#W%bvsv%EU{ z^2%bKH`tw)wdzuXEfJ}ZY8T5WqcU4L5ld$J*P9LPhqE!j(T!HqVr`@L7PT;sa%jnL zNPM+qWj4+C_*fBf7zM{@z{cVLgWft-!JdFhcvYBO(-Q#|YIa~|SAJdv^S}Az)qzV;S|!BvFW6dFay08(84puXaAHvhG(>_zr&Ez2WMAcWzJggT z?}~Y4ZJ`>^UGug!Ogxu50@}6ivHH?g)dM51KvCoiPY?p}wmppDb-&_joW9 zl+mv$tkm>NuY%3fsqmVw+N@(Oh^seOe$}RMO+oq#8aEX_o1Jg_`~ael*z`n+AQ8`H z2M?r6F&hm)=WH>PrdeeY{;gxwEChwzIcJxP;|!f$9GB*t{c>?{?(BSI`MR7(4p&ze zOSDqD$e7u}KUsWm2W0QU{bD0RR6308mQ<1QY-U z00;m803iT|Ukhx04FCWuJOBU@0001YZ*pWWb7gdNX>Mn8E_iKhv|HP5+{h7q50HNl z^c-1zzYHud`kL%woed%{@=VQ8(!evr0f(}z4f5|P&c(9j!-aQ~^@GgeVOLjGS5;S4 zldr$~xL%!oX#3r=+gzRVSM2<(-ORhia&vce{`0$f;m*%?L$g^lt8UX?oj-p9B{V;52mzTTweYinVK%#I{3*2{U{?Yi4x95U-}ZZQe#XnbT@er6W_Q2b?oQO!zn2<;_a`DBeocrE>(%MGN6x-M+{dn8d>ZjB z?2QAqeK&7+J6fRi>crr3^E|QoiqNOIU(wu05%;8MIA{B-&pFq>jez)yfSE5Bzm0}D z(zv9NpV8U1zm1GOk=Z@1+m9zgyVbX-_5l63yy=_%V7N!UuIIDw?>1fE+^mQl((f6m z=xop3_;=*^4LQv(UAI1aoNe2FPL@L+$JqJh2+(?Ux7R~6(Bre+wq33EE;wJc4N-rb z-Sy3yoac0BKW5S1HV>=eU2}6ibX$7pLqkGXaU?mvZ~A6FwEgwAnG?0tZHB&Eot|5C zfA5Awj@Xl(97fzP`s@2<+vWq|-J93lY&YIG&a^xGFl#>&+wEdGP+-_D7whKZ)wvK_ z_>sgVqVYJp?Yd#p4edYr&wmjkqXk^>!{je+?}fO0Ikw#_zWVWk&X;#jWWE@92tUtP z*N0F>LpIHtmhX%3^tM~H;|e_V%Wt={all^7Tpbq!PSjE8?U#%8-Doz~!_%s*v`E*> zU)r!){P3_FmPBzMr2YpEevN^4GtT@I8Tz}YZCl%Bcp!85gC^TsTwN`mP`chC~KVLHK;BP3+Z zfe}GKpW{Xs16Ph)oirZfRKmW%olOEu>X{W-QqO(FTzi=c<}ENUupI=h6P_oCI0#BOZc)*jX7JEtN`IPs)L}-1mq=nUt{XU7ecCrULul`0oxmSR)YJ2$V>*Tx5D+rJcZ&I=DKp)(=nnI&g>*p8e5`d zwqVbaTw9#GkjHTbtyj{&N7xKSZ%RYMM|ykn8>2Tx{j1S!8j_TwhHT-ydLk{vhaz@NERXR zjzL8hPuO~ktr5>daUAC%id2BJb;VRk6NsJ2dlhE}+kp~Rr70viC@CRDVGg9I4z2

    v~m%tZ=n8WiNOhO%~@NZ<-d4O;EE2=SX_Y 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 diff --git a/Source/Doc/RomWBW System Guide/Build.cmd b/Source/Doc/RomWBW System Guide/Build.cmd deleted file mode 100644 index 3413f3fc..00000000 --- a/Source/Doc/RomWBW System Guide/Build.cmd +++ /dev/null @@ -1,19 +0,0 @@ -@echo off -setlocal - -rem set MIKTEX_HOME=D:\miktex-portable\texmfs\install - -rem if "%MIKTEX_HOME%"=="" goto :eof - -rem set TEXSYSTEM=miktex -rem set MIKTEX_BINDIR=%MIKTEX_HOME%\miktex\bin -rem set MIKTEX_COMMONSTARTUPFILE=%MIKTEX_HOME%\miktex\config\miktexstartup.ini -rem set MIKTEX_GS_LIB=%MIKTEX_HOME%\ghostscript\base;%MIKTEX_HOME%\fonts -rem set MIKTEX_USERSTARTUPFILE=%MIKTEX_HOME%\miktex\config\miktexstartup.ini -rem set PATH=%MIKTEX_HOME%\miktex\bin;%PATH% - -call texify -p --clean Main.ltx - -if errorlevel 1 goto :eof - -move /Y Main.pdf "..\..\..\Doc\RomWBW System Guide.pdf" \ No newline at end of file diff --git a/Source/Doc/RomWBW System Guide/Clean.cmd b/Source/Doc/RomWBW System Guide/Clean.cmd deleted file mode 100644 index 66c5e249..00000000 --- a/Source/Doc/RomWBW System Guide/Clean.cmd +++ /dev/null @@ -1,9 +0,0 @@ -@echo off -setlocal - -if exist *.aux del *.aux -if exist *.log del *.log -if exist *.toc del *.toc -if exist *.lot del *.lot -if exist *.lof del *.lof -if exist *.pdf del *.pdf diff --git a/Source/Doc/RomWBW System Guide/Generate.cmd b/Source/Doc/RomWBW System Guide/Generate.cmd deleted file mode 100644 index f43109b8..00000000 --- a/Source/Doc/RomWBW System Guide/Generate.cmd +++ /dev/null @@ -1,4 +0,0 @@ -@echo off -setlocal - -texify -p -V --run-viewer Main.ltx diff --git a/Source/Doc/RomWBW System Guide/Main.ltx b/Source/Doc/RomWBW System Guide/Main.ltx deleted file mode 100644 index b6cb5a9c..00000000 --- a/Source/Doc/RomWBW System Guide/Main.ltx +++ /dev/null @@ -1,790 +0,0 @@ -\documentclass[letterpaper,12pt]{refrep} -\usepackage[T1]{fontenc} % Handle char values 128-255 -\usepackage[scaled]{helvet} % A nice sans serif font please -\usepackage{blindtext} % Enable \blindtext -\usepackage{scrextend} % ??? -\addtokomafont{labelinglabel}{\bfseries} % Make list labels bold -\usepackage[inline]{enumitem} % Prettier version of enumerate list -\usepackage{xcolor} % Enable colors? -\usepackage{framed} % Enable framing (used in examples) -\usepackage{graphicx} % ??? -\usepackage{fancyhdr} % More flexible header formatting -\usepackage{xhfill} % Enable \xrfill used in footer -%\usepackage{listings} % Handles source listings, improves on verbatim -\usepackage{fancyvrb} % Enhances \verbatim to allow internal formatting -\usepackage{hyperref} % More flexible hyperref formatting (\hypersetup) -\usepackage{bookmark} % Avoids "Package rerunfilecheck Warning" -\renewcommand*{\familydefault}{\sfdefault} -\title{RomWBW System Guide\\Version 2.8} -\author{Wayne Warthen\\wwarthen@gmail.com\\\\RetroBrew Computing Group\\http://www.retrobrewcomputers.org} -\date{\today} -\fullpage -\sloppy -\hypersetup{colorlinks=true} - -%\pdfobjcompresslevel=1 - -\begin{document} - -\pagenumbering{roman} - -\pagestyle{empty} - -%\maketitle -\begin{titlepage} - \centering - \par - \vspace*{72pt} - \includegraphics{Logo.png} \par - \vfill - \raggedleft - {\scshape \bfseries \fontsize{48pt}{56pt} \selectfont RomWBW \par} - {\bfseries \fontsize{32pt}{36pt} \selectfont System Guide \par} - \vspace{24pt} - {\huge Version 2.8 \\ \today \par} - \vspace{24pt} - {\large \itshape RetroBrew Computing Group \\ \href{http://www.retrobrewcomputers.org}{www.retrobrewcomputers.org} \par} - \vspace{12pt} - {\large \itshape Wayne Warthen \\ \href{mailto:wwarthen@gmail.com}{wwarthen@gmail.com} \par} -\end{titlepage} - -%\newpage - -\setcounter{page}{2} - -\begin{center} \Large COPYRIGHT \end{center} - -Copyright \copyright{} 2016 Wayne Warthen - -Permission is granted to copy, distribute and/or modify this document -under the terms of the GNU Free Documentation License, Version 1.3 -or any later version published by the Free Software Foundation; -with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. -A copy of the license is included in the section entitled "GNU -Free Documentation License". - -\bigskip -\begin{center} \Large DISCLAIMER \end{center} - -The author makes no representations or warranties with respect to the contents hereof and -specifically disclaims any implied warranties of merchantability or fitness for any particular -purpose. Further, the author reserves the right to revise this publication and to make -changes from time to time in the content hereof without obligation of the author to notify -any person of such revision or changes. - -\bigskip -\begin{center} \Large TRADEMARKS \end{center} - -CP/M is a registered trademark of Digital Research. ASM, DESPOOL, DDT, -LINK-80, MAC, MP/M, PL/1-80 and SID are trademarks of Digital Research. Intel is a -registered trademark of Intel Corporation. Zilog and Z80 are registered trademarks of Zilog, Inc. - -\bigskip -\bigskip -\begin{center} \rule{3cm}{2pt} \end{center} - -\bigskip -\bigskip -\begin{it} -This document was formatted using \LaTeX{} and produced using the MiKTeX implementation of pdfLaTeX, MakeIndex, and BibTeX running on Microsoft Windows. -\end{it} - -%\clearpage - -\fancyhf{} -\setlength{\headheight}{15.2pt} -\pagestyle{fancyplain} -\renewcommand{\chaptermark}[1]{ \markboth{#1}{} } -\renewcommand{\sectionmark}[1]{ \markright{#1}{} } -\lhead{ \fancyplain{}{\footnotesize \bfseries \rightmark \hfill RomWBW System Guide} } -\lfoot{ \fancyplain{}{\small RetroBrew Computing Group ~~ {\xrfill[3pt]{1pt}[cyan]} ~~ \thepage} } - -\renewcommand{\contentsname}{Table of Contents} -\tableofcontents -\listoftables -\listoffigures -\clearpage - -\lhead{ \fancyplain{}{\footnotesize \bfseries \thesection ~ \rightmark \hfill RomWBW System Guide} } -\pagenumbering{arabic} - -%\input{Overview.ltx} - -%\input{GettingStarted.ltx} - -\chapter{Introduction} - -\LaTeX{} is a document preparation system for -the \TeX{} typesetting program. It offers excellent -programmable desktop publishing features and -extensive facilities for automating most -aspects of typesetting and desktop publishing, -including numbering and cross-referencing, -tables and figures, page layout, -bibliographies, and much more. \LaTeX{} was -originally written in 1984 by Leslie Lamport -and has become the dominant method for using -\TeX; few people write in plain \TeX{} anymore. -The current version is \LaTeXe. - -\section{Acknowledgements} - -\section{System Requirements} - -\section{Getting Started} - -\newpage - -This is a second paragraph. - -This is a third paragraph. - -An itemized list: - -\begin{itemize} -\item First list item -\item Second list item -\item Third list item -\end{itemize} - - -An enumerated list: - -\begin{enumerate}[label=\textbf{\arabic*}.] -\item First list item -\item Second list item -\item Third list item -\end{enumerate} - -A description list: - -\begin{description} -\item [Ant] What is an ant? -\item [Elephant] \blindtext -\end{description} - -Labeling: - -\begin{labeling}{alligator} -\item [ant] really busy all the time -\item [chimp] likes bananas -\item [alligator] very dangerous animal, sharp teeth, long -muscular tail and a bit of text that is longer than one -line and shows the alignment of text quite nicely -\end{labeling} - -\section{Getting Started} - -\begin{framed} -\ttfamily -\footnotesize -%\small -\begin{verbatim} -C:> -12345678901234567890123456789012345678901234567890123456789012345678901234567890 -12345678901234567890123456789012345678901234567890123456789012345678901234567890 -12345678901234567890123456789012345678901234567890123456789012345678901234567890 -12345678901234567890123456789012345678901234567890123456789012345678901234567890 -12345678901234567890123456789012345678901234567890123456789012345678901234567890 -12345678901234567890123456789012345678901234567890123456789012345678901234567890 -12345678901234567890123456789012345678901234567890123456789012345678901234567890 -12345678901234567890123456789012345678901234567890123456789012345678901234567890 -12345678901234567890123456789012345678901234567890123456789012345678901234567890 -\end{verbatim} -\end{framed} - -Now something else. - -Below is a table: - -\begin{tabular}{l ||| l | l | p{5cm}} -\hline -hello & goodbyte & hex & decimal \\ -\hline -\hline -hello & goodbyte & hex & decimal \\ -hello & goodbyte & hex & decimal \\ -\hline -\end{tabular} - -\chapter{Introduction} -\section{Getting Started} -\blindtext \par -\blindtext \par -\blindtext \par -\blindtext \par -\blindtext \par -\blindtext \par - -\chapter{Introduction} -\section{Getting Started} -\blindtext - -\chapter{Introduction} -\section{Getting Started} -\blindtext - -\chapter{Introduction} -\section{Getting Started} -\blindtext - -\chapter{Introduction} -\section{Getting Started} -\blindtext - -\chapter{Introduction} -\section{Getting Started} -\blindtext - -\chapter{Introduction} -\section{Getting Started} -\blindtext - -\chapter{Introduction} -\section{Getting Started} -\blindtext - -\chapter{Introduction} -\section{Getting Started} -\blindtext - -\chapter{Introduction} -\section{Getting Started} -\blindtext - -\appendix - -\chapter{Licensing} - -\section{GNU Free Documentation License} - -%\chapter*{\rlap{GNU Free Documentation License}} -%\addcontentsline{toc}{chapter}{GNU Free Documentation License} - - \begin{center} - - Version 1.3, 3 November 2008 - -\end{center} - -Copyright \copyright{} 2000, 2001, 2002, 2007, 2008 Free Software Foundation, Inc. -\href{http://fsf.org/}{} - - Everyone is permitted to copy and distribute verbatim copies - of this license document, but changing it is not allowed. - - -{\large\bf 0. PREAMBLE \par} - -The purpose of this License is to make a manual, textbook, or other -functional and useful document ``free'' in the sense of freedom: to -assure everyone the effective freedom to copy and redistribute it, -with or without modifying it, either commercially or noncommercially. -Secondarily, this License preserves for the author and publisher a way -to get credit for their work, while not being considered responsible -for modifications made by others. - -This License is a kind of ``copyleft'', which means that derivative -works of the document must themselves be free in the same sense. It -complements the GNU General Public License, which is a copyleft -license designed for free software. - -We have designed this License in order to use it for manuals for free -software, because free software needs free documentation: a free -program should come with manuals providing the same freedoms that the -software does. But this License is not limited to software manuals; -it can be used for any textual work, regardless of subject matter or -whether it is published as a printed book. We recommend this License -principally for works whose purpose is instruction or reference. - - -{\large\bf 1. APPLICABILITY AND DEFINITIONS\par} -%\phantomsection -%\addcontentsline{toc}{section}{1. APPLICABILITY AND DEFINITIONS} - -This License applies to any manual or other work, in any medium, that -contains a notice placed by the copyright holder saying it can be -distributed under the terms of this License. Such a notice grants a -world-wide, royalty-free license, unlimited in duration, to use that -work under the conditions stated herein. The ``\textbf{Document}'', below, -refers to any such manual or work. Any member of the public is a -licensee, and is addressed as ``\textbf{you}''. You accept the license if you -copy, modify or distribute the work in a way requiring permission -under copyright law. - -A ``\textbf{Modified Version}'' of the Document means any work containing the -Document or a portion of it, either copied verbatim, or with -modifications and/or translated into another language. - -A ``\textbf{Secondary Section}'' is a named appendix or a front-matter section of -the Document that deals exclusively with the relationship of the -publishers or authors of the Document to the Document's overall subject -(or to related matters) and contains nothing that could fall directly -within that overall subject. (Thus, if the Document is in part a -textbook of mathematics, a Secondary Section may not explain any -mathematics.) The relationship could be a matter of historical -connection with the subject or with related matters, or of legal, -commercial, philosophical, ethical or political position regarding -them. - -The ``\textbf{Invariant Sections}'' are certain Secondary Sections whose titles -are designated, as being those of Invariant Sections, in the notice -that says that the Document is released under this License. If a -section does not fit the above definition of Secondary then it is not -allowed to be designated as Invariant. The Document may contain zero -Invariant Sections. If the Document does not identify any Invariant -Sections then there are none. - -The ``\textbf{Cover Texts}'' are certain short passages of text that are listed, -as Front-Cover Texts or Back-Cover Texts, in the notice that says that -the Document is released under this License. A Front-Cover Text may -be at most 5 words, and a Back-Cover Text may be at most 25 words. - -A ``\textbf{Transparent}'' copy of the Document means a machine-readable copy, -represented in a format whose specification is available to the -general public, that is suitable for revising the document -straightforwardly with generic text editors or (for images composed of -pixels) generic paint programs or (for drawings) some widely available -drawing editor, and that is suitable for input to text formatters or -for automatic translation to a variety of formats suitable for input -to text formatters. A copy made in an otherwise Transparent file -format whose markup, or absence of markup, has been arranged to thwart -or discourage subsequent modification by readers is not Transparent. -An image format is not Transparent if used for any substantial amount -of text. A copy that is not ``Transparent'' is called ``\textbf{Opaque}''. - -Examples of suitable formats for Transparent copies include plain -ASCII without markup, Texinfo input format, LaTeX input format, SGML -or XML using a publicly available DTD, and standard-conforming simple -HTML, PostScript or PDF designed for human modification. Examples of -transparent image formats include PNG, XCF and JPG. Opaque formats -include proprietary formats that can be read and edited only by -proprietary word processors, SGML or XML for which the DTD and/or -processing tools are not generally available, and the -machine-generated HTML, PostScript or PDF produced by some word -processors for output purposes only. - -The ``\textbf{Title Page}'' means, for a printed book, the title page itself, -plus such following pages as are needed to hold, legibly, the material -this License requires to appear in the title page. For works in -formats which do not have any title page as such, ``Title Page'' means -the text near the most prominent appearance of the work's title, -preceding the beginning of the body of the text. - -The ``\textbf{publisher}'' means any person or entity that distributes -copies of the Document to the public. - -A section ``\textbf{Entitled XYZ}'' means a named subunit of the Document whose -title either is precisely XYZ or contains XYZ in parentheses following -text that translates XYZ in another language. (Here XYZ stands for a -specific section name mentioned below, such as ``\textbf{Acknowledgements}'', -``\textbf{Dedications}'', ``\textbf{Endorsements}'', or ``\textbf{History}''.) -To ``\textbf{Preserve the Title}'' -of such a section when you modify the Document means that it remains a -section ``Entitled XYZ'' according to this definition. - -The Document may include Warranty Disclaimers next to the notice which -states that this License applies to the Document. These Warranty -Disclaimers are considered to be included by reference in this -License, but only as regards disclaiming warranties: any other -implication that these Warranty Disclaimers may have is void and has -no effect on the meaning of this License. - - -{\large\bf 2. VERBATIM COPYING\par} -%\phantomsection -%\addcontentsline{toc}{section}{2. VERBATIM COPYING} - -You may copy and distribute the Document in any medium, either -commercially or noncommercially, provided that this License, the -copyright notices, and the license notice saying this License applies -to the Document are reproduced in all copies, and that you add no other -conditions whatsoever to those of this License. You may not use -technical measures to obstruct or control the reading or further -copying of the copies you make or distribute. However, you may accept -compensation in exchange for copies. If you distribute a large enough -number of copies you must also follow the conditions in section~3. - -You may also lend copies, under the same conditions stated above, and -you may publicly display copies. - - -{\large\bf 3. COPYING IN QUANTITY\par} -%\phantomsection -%\addcontentsline{toc}{section}{3. COPYING IN QUANTITY} - - -If you publish printed copies (or copies in media that commonly have -printed covers) of the Document, numbering more than 100, and the -Document's license notice requires Cover Texts, you must enclose the -copies in covers that carry, clearly and legibly, all these Cover -Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on -the back cover. Both covers must also clearly and legibly identify -you as the publisher of these copies. The front cover must present -the full title with all words of the title equally prominent and -visible. You may add other material on the covers in addition. -Copying with changes limited to the covers, as long as they preserve -the title of the Document and satisfy these conditions, can be treated -as verbatim copying in other respects. - -If the required texts for either cover are too voluminous to fit -legibly, you should put the first ones listed (as many as fit -reasonably) on the actual cover, and continue the rest onto adjacent -pages. - -If you publish or distribute Opaque copies of the Document numbering -more than 100, you must either include a machine-readable Transparent -copy along with each Opaque copy, or state in or with each Opaque copy -a computer-network location from which the general network-using -public has access to download using public-standard network protocols -a complete Transparent copy of the Document, free of added material. -If you use the latter option, you must take reasonably prudent steps, -when you begin distribution of Opaque copies in quantity, to ensure -that this Transparent copy will remain thus accessible at the stated -location until at least one year after the last time you distribute an -Opaque copy (directly or through your agents or retailers) of that -edition to the public. - -It is requested, but not required, that you contact the authors of the -Document well before redistributing any large number of copies, to give -them a chance to provide you with an updated version of the Document. - - -{\large\bf 4. MODIFICATIONS\par} -%\phantomsection -%\addcontentsline{toc}{section}{4. MODIFICATIONS} - -You may copy and distribute a Modified Version of the Document under -the conditions of sections 2 and 3 above, provided that you release -the Modified Version under precisely this License, with the Modified -Version filling the role of the Document, thus licensing distribution -and modification of the Modified Version to whoever possesses a copy -of it. In addition, you must do these things in the Modified Version: - -\begin{itemize} -\item[A.] - Use in the Title Page (and on the covers, if any) a title distinct - from that of the Document, and from those of previous versions - (which should, if there were any, be listed in the History section - of the Document). You may use the same title as a previous version - if the original publisher of that version gives permission. - -\item[B.] - List on the Title Page, as authors, one or more persons or entities - responsible for authorship of the modifications in the Modified - Version, together with at least five of the principal authors of the - Document (all of its principal authors, if it has fewer than five), - unless they release you from this requirement. - -\item[C.] - State on the Title page the name of the publisher of the - Modified Version, as the publisher. - -\item[D.] - Preserve all the copyright notices of the Document. - -\item[E.] - Add an appropriate copyright notice for your modifications - adjacent to the other copyright notices. - -\item[F.] - Include, immediately after the copyright notices, a license notice - giving the public permission to use the Modified Version under the - terms of this License, in the form shown in the Addendum below. - -\item[G.] - Preserve in that license notice the full lists of Invariant Sections - and required Cover Texts given in the Document's license notice. - -\item[H.] - Include an unaltered copy of this License. - -\item[I.] - Preserve the section Entitled ``History'', Preserve its Title, and add - to it an item stating at least the title, year, new authors, and - publisher of the Modified Version as given on the Title Page. If - there is no section Entitled ``History'' in the Document, create one - stating the title, year, authors, and publisher of the Document as - given on its Title Page, then add an item describing the Modified - Version as stated in the previous sentence. - -\item[J.] - Preserve the network location, if any, given in the Document for - public access to a Transparent copy of the Document, and likewise - the network locations given in the Document for previous versions - it was based on. These may be placed in the ``History'' section. - You may omit a network location for a work that was published at - least four years before the Document itself, or if the original - publisher of the version it refers to gives permission. - -\item[K.] - For any section Entitled ``Acknowledgements'' or ``Dedications'', - Preserve the Title of the section, and preserve in the section all - the substance and tone of each of the contributor acknowledgements - and/or dedications given therein. - -\item[L.] - Preserve all the Invariant Sections of the Document, - unaltered in their text and in their titles. Section numbers - or the equivalent are not considered part of the section titles. - -\item[M.] - Delete any section Entitled ``Endorsements''. Such a section - may not be included in the Modified Version. - -\item[N.] - Do not retitle any existing section to be Entitled ``Endorsements'' - or to conflict in title with any Invariant Section. - -\item[O.] - Preserve any Warranty Disclaimers. -\end{itemize} - -If the Modified Version includes new front-matter sections or -appendices that qualify as Secondary Sections and contain no material -copied from the Document, you may at your option designate some or all -of these sections as invariant. To do this, add their titles to the -list of Invariant Sections in the Modified Version's license notice. -These titles must be distinct from any other section titles. - -You may add a section Entitled ``Endorsements'', provided it contains -nothing but endorsements of your Modified Version by various -parties---for example, statements of peer review or that the text has -been approved by an organization as the authoritative definition of a -standard. - -You may add a passage of up to five words as a Front-Cover Text, and a -passage of up to 25 words as a Back-Cover Text, to the end of the list -of Cover Texts in the Modified Version. Only one passage of -Front-Cover Text and one of Back-Cover Text may be added by (or -through arrangements made by) any one entity. If the Document already -includes a cover text for the same cover, previously added by you or -by arrangement made by the same entity you are acting on behalf of, -you may not add another; but you may replace the old one, on explicit -permission from the previous publisher that added the old one. - -The author(s) and publisher(s) of the Document do not by this License -give permission to use their names for publicity for or to assert or -imply endorsement of any Modified Version. - - -{\large\bf 5. COMBINING DOCUMENTS\par} -%\phantomsection -%\addcontentsline{toc}{section}{5. COMBINING DOCUMENTS} - - -You may combine the Document with other documents released under this -License, under the terms defined in section~4 above for modified -versions, provided that you include in the combination all of the -Invariant Sections of all of the original documents, unmodified, and -list them all as Invariant Sections of your combined work in its -license notice, and that you preserve all their Warranty Disclaimers. - -The combined work need only contain one copy of this License, and -multiple identical Invariant Sections may be replaced with a single -copy. If there are multiple Invariant Sections with the same name but -different contents, make the title of each such section unique by -adding at the end of it, in parentheses, the name of the original -author or publisher of that section if known, or else a unique number. -Make the same adjustment to the section titles in the list of -Invariant Sections in the license notice of the combined work. - -In the combination, you must combine any sections Entitled ``History'' -in the various original documents, forming one section Entitled -``History''; likewise combine any sections Entitled ``Acknowledgements'', -and any sections Entitled ``Dedications''. You must delete all sections -Entitled ``Endorsements''. - -{\large\bf 6. COLLECTIONS OF DOCUMENTS\par} -%\phantomsection -%\addcontentsline{toc}{section}{6. COLLECTIONS OF DOCUMENTS} - -You may make a collection consisting of the Document and other documents -released under this License, and replace the individual copies of this -License in the various documents with a single copy that is included in -the collection, provided that you follow the rules of this License for -verbatim copying of each of the documents in all other respects. - -You may extract a single document from such a collection, and distribute -it individually under this License, provided you insert a copy of this -License into the extracted document, and follow this License in all -other respects regarding verbatim copying of that document. - - -{\large\bf 7. AGGREGATION WITH INDEPENDENT WORKS\par} -%\phantomsection -%\addcontentsline{toc}{section}{7. AGGREGATION WITH INDEPENDENT WORKS} - - -A compilation of the Document or its derivatives with other separate -and independent documents or works, in or on a volume of a storage or -distribution medium, is called an ``aggregate'' if the copyright -resulting from the compilation is not used to limit the legal rights -of the compilation's users beyond what the individual works permit. -When the Document is included in an aggregate, this License does not -apply to the other works in the aggregate which are not themselves -derivative works of the Document. - -If the Cover Text requirement of section~3 is applicable to these -copies of the Document, then if the Document is less than one half of -the entire aggregate, the Document's Cover Texts may be placed on -covers that bracket the Document within the aggregate, or the -electronic equivalent of covers if the Document is in electronic form. -Otherwise they must appear on printed covers that bracket the whole -aggregate. - - -{\large\bf 8. TRANSLATION\par} -%\phantomsection -%\addcontentsline{toc}{section}{8. TRANSLATION} - - -Translation is considered a kind of modification, so you may -distribute translations of the Document under the terms of section~4. -Replacing Invariant Sections with translations requires special -permission from their copyright holders, but you may include -translations of some or all Invariant Sections in addition to the -original versions of these Invariant Sections. You may include a -translation of this License, and all the license notices in the -Document, and any Warranty Disclaimers, provided that you also include -the original English version of this License and the original versions -of those notices and disclaimers. In case of a disagreement between -the translation and the original version of this License or a notice -or disclaimer, the original version will prevail. - -If a section in the Document is Entitled ``Acknowledgements'', -``Dedications'', or ``History'', the requirement (section~4) to Preserve -its Title (section~1) will typically require changing the actual -title. - - -{\large\bf 9. TERMINATION\par} -%\phantomsection -%\addcontentsline{toc}{section}{9. TERMINATION} - - -You may not copy, modify, sublicense, or distribute the Document -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense, or distribute it is void, and -will automatically terminate your rights under this License. - -However, if you cease all violation of this License, then your license -from a particular copyright holder is reinstated (a) provisionally, -unless and until the copyright holder explicitly and finally -terminates your license, and (b) permanently, if the copyright holder -fails to notify you of the violation by some reasonable means prior to -60 days after the cessation. - -Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - -Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, receipt of a copy of some or all of the same material does -not give you any rights to use it. - - -{\large\bf 10. FUTURE REVISIONS OF THIS LICENSE\par} -%\phantomsection -%\addcontentsline{toc}{section}{10. FUTURE REVISIONS OF THIS LICENSE} - - -The Free Software Foundation may publish new, revised versions -of the GNU Free Documentation License from time to time. Such new -versions will be similar in spirit to the present version, but may -differ in detail to address new problems or concerns. See -\texttt{http://www.gnu.org/copyleft/}. - -Each version of the License is given a distinguishing version number. -If the Document specifies that a particular numbered version of this -License ``or any later version'' applies to it, you have the option of -following the terms and conditions either of that specified version or -of any later version that has been published (not as a draft) by the -Free Software Foundation. If the Document does not specify a version -number of this License, you may choose any version ever published (not -as a draft) by the Free Software Foundation. If the Document -specifies that a proxy can decide which future versions of this -License can be used, that proxy's public statement of acceptance of a -version permanently authorizes you to choose that version for the -Document. - - -{\large\bf 11. RELICENSING\par} -%\phantomsection -%\addcontentsline{toc}{section}{11. RELICENSING} - - -``Massive Multiauthor Collaboration Site'' (or ``MMC Site'') means any -World Wide Web server that publishes copyrightable works and also -provides prominent facilities for anybody to edit those works. A -public wiki that anybody can edit is an example of such a server. A -``Massive Multiauthor Collaboration'' (or ``MMC'') contained in the -site means any set of copyrightable works thus published on the MMC -site. - -``CC-BY-SA'' means the Creative Commons Attribution-Share Alike 3.0 -license published by Creative Commons Corporation, a not-for-profit -corporation with a principal place of business in San Francisco, -California, as well as future copyleft versions of that license -published by that same organization. - -``Incorporate'' means to publish or republish a Document, in whole or -in part, as part of another Document. - -An MMC is ``eligible for relicensing'' if it is licensed under this -License, and if all works that were first published under this License -somewhere other than this MMC, and subsequently incorporated in whole -or in part into the MMC, (1) had no cover texts or invariant sections, -and (2) were thus incorporated prior to November 1, 2008. - -The operator of an MMC Site may republish an MMC contained in the site -under CC-BY-SA on the same site at any time before August 1, 2009, -provided the MMC is eligible for relicensing. - - -{\large\bf ADDENDUM: How to use this License for your documents\par} -%\phantomsection -%\addcontentsline{toc}{section}{ADDENDUM: How to use this License for your documents} - -To use this License in a document you have written, include a copy of -the License in the document and put the following copyright and -license notices just after the title page: - -\bigskip -\begin{quote} - Copyright \copyright{} YEAR YOUR NAME. - - Permission is granted to copy, distribute and/or modify this document - under the terms of the GNU Free Documentation License, Version 1.3 - or any later version published by the Free Software Foundation; - with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. - A copy of the license is included in the section entitled ``GNU - Free Documentation License''. -\end{quote} -\bigskip - -If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, -replace the ``with \dots\ Texts.''\ line with this: - -\bigskip -\begin{quote} - with the Invariant Sections being LIST THEIR TITLES, with the - Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. -\end{quote} -\bigskip - -If you have Invariant Sections without Cover Texts, or some other -combination of the three, merge those two alternatives to suit the -situation. - -If your document contains nontrivial examples of program code, we -recommend releasing these examples in parallel under your choice of -free software license, such as the GNU General Public License, -to permit their use in free software. - -\end{document} \ No newline at end of file diff --git a/Source/Doc/RomWBW User Guide/BoardNotes.ltx b/Source/Doc/RomWBW User Guide/BoardNotes.ltx deleted file mode 100644 index 6c6beaa1..00000000 --- a/Source/Doc/RomWBW User Guide/BoardNotes.ltx +++ /dev/null @@ -1,20 +0,0 @@ -\chapter{Board Notes} - -\blindtext - -\section{SBC} - -\blindtext - -\section{Zeta} - -\blindtext - -\section{N8} - -\blindtext - -\section{Mark IV} - -\blindtext - diff --git a/Source/Doc/RomWBW User Guide/Build.cmd b/Source/Doc/RomWBW User Guide/Build.cmd deleted file mode 100644 index 3218fc6c..00000000 --- a/Source/Doc/RomWBW User Guide/Build.cmd +++ /dev/null @@ -1,19 +0,0 @@ -@echo off -setlocal - -rem set MIKTEX_HOME=D:\miktex-portable\texmfs\install - -rem if "%MIKTEX_HOME%"=="" goto :eof - -rem set TEXSYSTEM=miktex -rem set MIKTEX_BINDIR=%MIKTEX_HOME%\miktex\bin -rem set MIKTEX_COMMONSTARTUPFILE=%MIKTEX_HOME%\miktex\config\miktexstartup.ini -rem set MIKTEX_GS_LIB=%MIKTEX_HOME%\ghostscript\base;%MIKTEX_HOME%\fonts -rem set MIKTEX_USERSTARTUPFILE=%MIKTEX_HOME%\miktex\config\miktexstartup.ini -rem set PATH=%MIKTEX_HOME%\miktex\bin;%PATH% - -call texify -p --clean Main.ltx - -if errorlevel 1 goto :eof - -move /Y Main.pdf "..\..\..\Doc\RomWBW User Guide.pdf" \ No newline at end of file diff --git a/Source/Doc/RomWBW User Guide/Clean.cmd b/Source/Doc/RomWBW User Guide/Clean.cmd deleted file mode 100644 index 66c5e249..00000000 --- a/Source/Doc/RomWBW User Guide/Clean.cmd +++ /dev/null @@ -1,9 +0,0 @@ -@echo off -setlocal - -if exist *.aux del *.aux -if exist *.log del *.log -if exist *.toc del *.toc -if exist *.lot del *.lot -if exist *.lof del *.lof -if exist *.pdf del *.pdf diff --git a/Source/Doc/RomWBW User Guide/Customization.ltx b/Source/Doc/RomWBW User Guide/Customization.ltx deleted file mode 100644 index a544dadf..00000000 --- a/Source/Doc/RomWBW User Guide/Customization.ltx +++ /dev/null @@ -1,12 +0,0 @@ -\chapter{Customization} - -\blindtext - -\section{Build Process} - -\blindtext - -\section{Configuration File} - -\blindtext - diff --git a/Source/Doc/RomWBW User Guide/DiskUsage.ltx b/Source/Doc/RomWBW User Guide/DiskUsage.ltx deleted file mode 100644 index 38dfe466..00000000 --- a/Source/Doc/RomWBW User Guide/DiskUsage.ltx +++ /dev/null @@ -1,15 +0,0 @@ -\chapter{Disk Usage} - -\blindtext - -\section{Preparing Disk Media} - -\blindtext - -\section{Disk Images} - -\blindtext - -\section{Placing Operating System on Disk} - -\blindtext \ No newline at end of file diff --git a/Source/Doc/RomWBW User Guide/Features.ltx b/Source/Doc/RomWBW User Guide/Features.ltx deleted file mode 100644 index 8c0a0500..00000000 --- a/Source/Doc/RomWBW User Guide/Features.ltx +++ /dev/null @@ -1,12 +0,0 @@ -\chapter{Features} - -\blindtext - -\section{Real Time Clock} - -\blindtext - -\section{Directory Time Stamping} - -\blindtext - diff --git a/Source/Doc/RomWBW User Guide/FormatSamples.ltx b/Source/Doc/RomWBW User Guide/FormatSamples.ltx deleted file mode 100644 index 4920b7df..00000000 --- a/Source/Doc/RomWBW User Guide/FormatSamples.ltx +++ /dev/null @@ -1,83 +0,0 @@ -\chapter{Formatting Samples} - -\blindtext - -An itemized list: - -\begin{itemize} -\item First list item -\item Second list item -\item Third list item -\end{itemize} - -An enumerated list: - -\begin{enumerate}[label=\textbf{\arabic*}.] -\item First list item -\item Second list item -\item Third list item -\end{enumerate} - -A description list: - -\begin{description}[style=multiline, leftmargin=1.25in, labelindent=0.25in, align=right] -\item [Ant] What is an ant? -\item [Elephant] \blindtext -\end{description} - -%Below is an example of labeling: - -%\begin{labeling}{alligator} -%\item [ant] really busy all the time -%\item [chimp] likes bananas -%\item [alligator] very dangerous animal, sharp teeth, long -%muscular tail and a bit of text that is longer than one -%line and shows the alignment of text quite nicely -%\end{labeling} - -\textrm{12345} - -Here is an output sample (Verbatim): - - -\begin{figure}[ht] -\setlength\abovecaptionskip{-0.5em} -\begin{Verbatim}[commandchars=\\\{\}, fontsize=\scriptsize, frame=single, rulecolor=\color{cyan}, numbers=left] -ROM Image: 'Output\textbackslash{}SBC_simh.rom' - -RetroBrew HBIOS v2.8.0-pre.5, 2016-06-22 - -SBC Z80 @ 20.000MHz ROM=512KB RAM=512KB -UART0: IO=0x68 8250 MODE=38400,8,N,1 -SIMRTC: Wed 2016-06-22 15:10:17 -MD: UNITS=2 ROMDISK=384KB RAMDISK=384KB -HDSK: UNITS=2 - -Below line is 80 characters: - -12345678901234567890123456789012345678901234567890123456789012345678901234567890 -\end{Verbatim} -\caption{Sample Output} -\label{fig:sampoutput} -\end{figure} - -Table \ref{tab:samptab} is an example of a floating table: - -\begin{table}[ht] -\center -\setlength{\arrayrulewidth}{2pt} -\begin{tabular}{l l} -\toprule -\bf CPU Board & \bf ROM Image File \\ -\midrule -SBC v1/v2 & SBC\_std.rom \\ -Zeta v1 & ZETA\_std.rom \\ -Zeta v2 & ZETA2\_std.rom \\ -N8 (2511) & N8\_2511.rom \\ -N8 (2312) & N8\_2312.rom \\ -Mark IV & MK4\_std.rom \\ -\bottomrule -\end{tabular} -\caption{Sample Table} -\label{tab:samptab} -\end{table} diff --git a/Source/Doc/RomWBW User Guide/GFDL.ltx b/Source/Doc/RomWBW User Guide/GFDL.ltx deleted file mode 100644 index 73bfeed4..00000000 --- a/Source/Doc/RomWBW User Guide/GFDL.ltx +++ /dev/null @@ -1,481 +0,0 @@ -\section{GNU Free Documentation License} - -\begin{center} Version 1.3, 3 November 2008 \end{center} - -\begin{multicols}{2} - -\tiny -\setlength{\parskip}{1em} -\setlength\columnseprule{.4pt} - -Copyright \copyright{} 2000, 2001, 2002, 2007, 2008 -Free Software Foundation, Inc. -\href{http://fsf.org/}{} - -Everyone is permitted to copy and distribute verbatim copies -of this license document, but changing it is not allowed. - -\textbf{0. PREAMBLE} - -The purpose of this License is to make a manual, textbook, or other -functional and useful document ``free'' in the sense of freedom: to -assure everyone the effective freedom to copy and redistribute it, -with or without modifying it, either commercially or noncommercially. -Secondarily, this License preserves for the author and publisher a way -to get credit for their work, while not being considered responsible -for modifications made by others. - -This License is a kind of ``copyleft'', which means that derivative -works of the document must themselves be free in the same sense. It -complements the GNU General Public License, which is a copyleft -license designed for free software. - -We have designed this License in order to use it for manuals for free -software, because free software needs free documentation: a free -program should come with manuals providing the same freedoms that the -software does. But this License is not limited to software manuals; -it can be used for any textual work, regardless of subject matter or -whether it is published as a printed book. We recommend this License -principally for works whose purpose is instruction or reference. - -\textbf{1. APPLICABILITY AND DEFINITIONS} - -This License applies to any manual or other work, in any medium, that -contains a notice placed by the copyright holder saying it can be -distributed under the terms of this License. Such a notice grants a -world-wide, royalty-free license, unlimited in duration, to use that -work under the conditions stated herein. The ``Document'', below, -refers to any such manual or work. Any member of the public is a -licensee, and is addressed as ``you''. You accept the license if you -copy, modify or distribute the work in a way requiring permission -under copyright law. - -A ``Modified Version'' of the Document means any work containing the -Document or a portion of it, either copied verbatim, or with -modifications and/or translated into another language. - -A ``Secondary Section'' is a named appendix or a front-matter section of -the Document that deals exclusively with the relationship of the -publishers or authors of the Document to the Document's overall subject -(or to related matters) and contains nothing that could fall directly -within that overall subject. (Thus, if the Document is in part a -textbook of mathematics, a Secondary Section may not explain any -mathematics.) The relationship could be a matter of historical -connection with the subject or with related matters, or of legal, -commercial, philosophical, ethical or political position regarding -them. - -The ``Invariant Sections'' are certain Secondary Sections whose titles -are designated, as being those of Invariant Sections, in the notice -that says that the Document is released under this License. If a -section does not fit the above definition of Secondary then it is not -allowed to be designated as Invariant. The Document may contain zero -Invariant Sections. If the Document does not identify any Invariant -Sections then there are none. - -The ``Cover Texts'' are certain short passages of text that are listed, -as Front-Cover Texts or Back-Cover Texts, in the notice that says that -the Document is released under this License. A Front-Cover Text may -be at most 5 words, and a Back-Cover Text may be at most 25 words. - -A ``Transparent'' copy of the Document means a machine-readable copy, -represented in a format whose specification is available to the -general public, that is suitable for revising the document -straightforwardly with generic text editors or (for images composed of -pixels) generic paint programs or (for drawings) some widely available -drawing editor, and that is suitable for input to text formatters or -for automatic translation to a variety of formats suitable for input -to text formatters. A copy made in an otherwise Transparent file -format whose markup, or absence of markup, has been arranged to thwart -or discourage subsequent modification by readers is not Transparent. -An image format is not Transparent if used for any substantial amount -of text. A copy that is not ``Transparent'' is called ``Opaque''. - -Examples of suitable formats for Transparent copies include plain -ASCII without markup, Texinfo input format, LaTeX input format, SGML -or XML using a publicly available DTD, and standard-conforming simple -HTML, PostScript or PDF designed for human modification. Examples of -transparent image formats include PNG, XCF and JPG. Opaque formats -include proprietary formats that can be read and edited only by -proprietary word processors, SGML or XML for which the DTD and/or -processing tools are not generally available, and the -machine-generated HTML, PostScript or PDF produced by some word -processors for output purposes only. - -The ``Title Page'' means, for a printed book, the title page itself, -plus such following pages as are needed to hold, legibly, the material -this License requires to appear in the title page. For works in -formats which do not have any title page as such, ``Title Page'' means -the text near the most prominent appearance of the work's title, -preceding the beginning of the body of the text. - -The ``publisher'' means any person or entity that distributes -copies of the Document to the public. - -A section ``Entitled XYZ'' means a named subunit of the Document whose -title either is precisely XYZ or contains XYZ in parentheses following -text that translates XYZ in another language. (Here XYZ stands for a -specific section name mentioned below, such as ``Acknowledgements'', -``Dedications'', ``Endorsements'', or ``History''.) -To ``Preserve the Title'' -of such a section when you modify the Document means that it remains a -section ``Entitled XYZ'' according to this definition. - -The Document may include Warranty Disclaimers next to the notice which -states that this License applies to the Document. These Warranty -Disclaimers are considered to be included by reference in this -License, but only as regards disclaiming warranties: any other -implication that these Warranty Disclaimers may have is void and has -no effect on the meaning of this License. - -\textbf{2. VERBATIM COPYING} - -You may copy and distribute the Document in any medium, either -commercially or noncommercially, provided that this License, the -copyright notices, and the license notice saying this License applies -to the Document are reproduced in all copies, and that you add no other -conditions whatsoever to those of this License. You may not use -technical measures to obstruct or control the reading or further -copying of the copies you make or distribute. However, you may accept -compensation in exchange for copies. If you distribute a large enough -number of copies you must also follow the conditions in section~3. - -You may also lend copies, under the same conditions stated above, and -you may publicly display copies. - -\textbf{3. COPYING IN QUANTITY} - -If you publish printed copies (or copies in media that commonly have -printed covers) of the Document, numbering more than 100, and the -Document's license notice requires Cover Texts, you must enclose the -copies in covers that carry, clearly and legibly, all these Cover -Texts: Front-Cover Texts on the front cover, and Back-Cover Texts on -the back cover. Both covers must also clearly and legibly identify -you as the publisher of these copies. The front cover must present -the full title with all words of the title equally prominent and -visible. You may add other material on the covers in addition. -Copying with changes limited to the covers, as long as they preserve -the title of the Document and satisfy these conditions, can be treated -as verbatim copying in other respects. - -If the required texts for either cover are too voluminous to fit -legibly, you should put the first ones listed (as many as fit -reasonably) on the actual cover, and continue the rest onto adjacent -pages. - -If you publish or distribute Opaque copies of the Document numbering -more than 100, you must either include a machine-readable Transparent -copy along with each Opaque copy, or state in or with each Opaque copy -a computer-network location from which the general network-using -public has access to download using public-standard network protocols -a complete Transparent copy of the Document, free of added material. -If you use the latter option, you must take reasonably prudent steps, -when you begin distribution of Opaque copies in quantity, to ensure -that this Transparent copy will remain thus accessible at the stated -location until at least one year after the last time you distribute an -Opaque copy (directly or through your agents or retailers) of that -edition to the public. - -It is requested, but not required, that you contact the authors of the -Document well before redistributing any large number of copies, to give -them a chance to provide you with an updated version of the Document. - -\textbf{4. MODIFICATIONS} - -You may copy and distribute a Modified Version of the Document under -the conditions of sections 2 and 3 above, provided that you release -the Modified Version under precisely this License, with the Modified -Version filling the role of the Document, thus licensing distribution -and modification of the Modified Version to whoever possesses a copy -of it. In addition, you must do these things in the Modified Version: - -\begin{itemize}[leftmargin=*] - -\item[A.] Use in the Title Page (and on the covers, if any) a title distinct -from that of the Document, and from those of previous versions -(which should, if there were any, be listed in the History section -of the Document). You may use the same title as a previous version -if the original publisher of that version gives permission. - -\item[B.] List on the Title Page, as authors, one or more persons or entities -responsible for authorship of the modifications in the Modified -Version, together with at least five of the principal authors of the -Document (all of its principal authors, if it has fewer than five), -unless they release you from this requirement. - -\item[C.] State on the Title page the name of the publisher of the -Modified Version, as the publisher. - -\item[D.] Preserve all the copyright notices of the Document. - -\item[E.] Add an appropriate copyright notice for your modifications -adjacent to the other copyright notices. - -\item[F.] Include, immediately after the copyright notices, a license notice -giving the public permission to use the Modified Version under the -terms of this License, in the form shown in the Addendum below. - -\item[G.] Preserve in that license notice the full lists of Invariant Sections -and required Cover Texts given in the Document's license notice. - -\item[H.] Include an unaltered copy of this License. - -\item[I.] Preserve the section Entitled ``History'', Preserve its Title, and add -to it an item stating at least the title, year, new authors, and -publisher of the Modified Version as given on the Title Page. If -there is no section Entitled ``History'' in the Document, create one -stating the title, year, authors, and publisher of the Document as -given on its Title Page, then add an item describing the Modified -Version as stated in the previous sentence. - -\item[J.] Preserve the network location, if any, given in the Document for -public access to a Transparent copy of the Document, and likewise -the network locations given in the Document for previous versions -it was based on. These may be placed in the ``History'' section. -You may omit a network location for a work that was published at -least four years before the Document itself, or if the original -publisher of the version it refers to gives permission. - -\item[K.] For any section Entitled ``Acknowledgements'' or ``Dedications'', -Preserve the Title of the section, and preserve in the section all -the substance and tone of each of the contributor acknowledgements -and/or dedications given therein. - -\item[L.] Preserve all the Invariant Sections of the Document, -unaltered in their text and in their titles. Section numbers -or the equivalent are not considered part of the section titles. - -\item[M.] Delete any section Entitled ``Endorsements''. Such a section -may not be included in the Modified Version. - -\item[N.] Do not retitle any existing section to be Entitled ``Endorsements'' -or to conflict in title with any Invariant Section. - -\item[O.] Preserve any Warranty Disclaimers. - -\end{itemize} - -If the Modified Version includes new front-matter sections or -appendices that qualify as Secondary Sections and contain no material -copied from the Document, you may at your option designate some or all -of these sections as invariant. To do this, add their titles to the -list of Invariant Sections in the Modified Version's license notice. -These titles must be distinct from any other section titles. - -You may add a section Entitled ``Endorsements'', provided it contains -nothing but endorsements of your Modified Version by various -parties---for example, statements of peer review or that the text has -been approved by an organization as the authoritative definition of a -standard. - -You may add a passage of up to five words as a Front-Cover Text, and a -passage of up to 25 words as a Back-Cover Text, to the end of the list -of Cover Texts in the Modified Version. Only one passage of -Front-Cover Text and one of Back-Cover Text may be added by (or -through arrangements made by) any one entity. If the Document already -includes a cover text for the same cover, previously added by you or -by arrangement made by the same entity you are acting on behalf of, -you may not add another; but you may replace the old one, on explicit -permission from the previous publisher that added the old one. - -The author(s) and publisher(s) of the Document do not by this License -give permission to use their names for publicity for or to assert or -imply endorsement of any Modified Version. - -\textbf{5. COMBINING DOCUMENTS} - -You may combine the Document with other documents released under this -License, under the terms defined in section~4 above for modified -versions, provided that you include in the combination all of the -Invariant Sections of all of the original documents, unmodified, and -list them all as Invariant Sections of your combined work in its -license notice, and that you preserve all their Warranty Disclaimers. - -The combined work need only contain one copy of this License, and -multiple identical Invariant Sections may be replaced with a single -copy. If there are multiple Invariant Sections with the same name but -different contents, make the title of each such section unique by -adding at the end of it, in parentheses, the name of the original -author or publisher of that section if known, or else a unique number. -Make the same adjustment to the section titles in the list of -Invariant Sections in the license notice of the combined work. - -In the combination, you must combine any sections Entitled ``History'' -in the various original documents, forming one section Entitled -``History''; likewise combine any sections Entitled ``Acknowledgements'', -and any sections Entitled ``Dedications''. You must delete all sections -Entitled ``Endorsements''. - -\textbf{6. COLLECTIONS OF DOCUMENTS} - -You may make a collection consisting of the Document and other documents -released under this License, and replace the individual copies of this -License in the various documents with a single copy that is included in -the collection, provided that you follow the rules of this License for -verbatim copying of each of the documents in all other respects. - -You may extract a single document from such a collection, and distribute -it individually under this License, provided you insert a copy of this -License into the extracted document, and follow this License in all -other respects regarding verbatim copying of that document. - - -\textbf{7. AGGREGATION WITH INDEPENDENT WORKS} - -A compilation of the Document or its derivatives with other separate -and independent documents or works, in or on a volume of a storage or -distribution medium, is called an ``aggregate'' if the copyright -resulting from the compilation is not used to limit the legal rights -of the compilation's users beyond what the individual works permit. -When the Document is included in an aggregate, this License does not -apply to the other works in the aggregate which are not themselves -derivative works of the Document. - -If the Cover Text requirement of section~3 is applicable to these -copies of the Document, then if the Document is less than one half of -the entire aggregate, the Document's Cover Texts may be placed on -covers that bracket the Document within the aggregate, or the -electronic equivalent of covers if the Document is in electronic form. -Otherwise they must appear on printed covers that bracket the whole -aggregate. - -\textbf{8. TRANSLATION} - -Translation is considered a kind of modification, so you may -distribute translations of the Document under the terms of section~4. -Replacing Invariant Sections with translations requires special -permission from their copyright holders, but you may include -translations of some or all Invariant Sections in addition to the -original versions of these Invariant Sections. You may include a -translation of this License, and all the license notices in the -Document, and any Warranty Disclaimers, provided that you also include -the original English version of this License and the original versions -of those notices and disclaimers. In case of a disagreement between -the translation and the original version of this License or a notice -or disclaimer, the original version will prevail. - -If a section in the Document is Entitled ``Acknowledgements'', -``Dedications'', or ``History'', the requirement (section~4) to Preserve -its Title (section~1) will typically require changing the actual -title. - -\textbf{9. TERMINATION} - -You may not copy, modify, sublicense, or distribute the Document -except as expressly provided under this License. Any attempt -otherwise to copy, modify, sublicense, or distribute it is void, and -will automatically terminate your rights under this License. - -However, if you cease all violation of this License, then your license -from a particular copyright holder is reinstated (a) provisionally, -unless and until the copyright holder explicitly and finally -terminates your license, and (b) permanently, if the copyright holder -fails to notify you of the violation by some reasonable means prior to -60 days after the cessation. - -Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - -Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, receipt of a copy of some or all of the same material does -not give you any rights to use it. - -\textbf{10. FUTURE REVISIONS OF THIS LICENSE} - -The Free Software Foundation may publish new, revised versions -of the GNU Free Documentation License from time to time. Such new -versions will be similar in spirit to the present version, but may -differ in detail to address new problems or concerns. See -\href{http://www.gnu.org/copyleft/}{http://www.gnu.org/copyleft/}. - -Each version of the License is given a distinguishing version number. -If the Document specifies that a particular numbered version of this -License ``or any later version'' applies to it, you have the option of -following the terms and conditions either of that specified version or -of any later version that has been published (not as a draft) by the -Free Software Foundation. If the Document does not specify a version -number of this License, you may choose any version ever published (not -as a draft) by the Free Software Foundation. If the Document -specifies that a proxy can decide which future versions of this -License can be used, that proxy's public statement of acceptance of a -version permanently authorizes you to choose that version for the -Document. - -\textbf{11. RELICENSING} - -``Massive Multiauthor Collaboration Site'' (or ``MMC Site'') means any -World Wide Web server that publishes copyrightable works and also -provides prominent facilities for anybody to edit those works. A -public wiki that anybody can edit is an example of such a server. A -``Massive Multiauthor Collaboration'' (or ``MMC'') contained in the -site means any set of copyrightable works thus published on the MMC -site. - -``CC-BY-SA'' means the Creative Commons Attribution-Share Alike 3.0 -license published by Creative Commons Corporation, a not-for-profit -corporation with a principal place of business in San Francisco, -California, as well as future copyleft versions of that license -published by that same organization. - -``Incorporate'' means to publish or republish a Document, in whole or -in part, as part of another Document. - -An MMC is ``eligible for relicensing'' if it is licensed under this -License, and if all works that were first published under this License -somewhere other than this MMC, and subsequently incorporated in whole -or in part into the MMC, (1) had no cover texts or invariant sections, -and (2) were thus incorporated prior to November 1, 2008. - -The operator of an MMC Site may republish an MMC contained in the site -under CC-BY-SA on the same site at any time before August 1, 2009, -provided the MMC is eligible for relicensing. - -\textbf{ADDENDUM: How to use this License for your documents} - -To use this License in a document you have written, include a copy of -the License in the document and put the following copyright and -license notices just after the title page: - -\begingroup -\leftskip=2em -\slshape - -Copyright \copyright{} YEAR YOUR NAME. - -Permission is granted to copy, distribute and/or modify this document -under the terms of the GNU Free Documentation License, Version 1.3 -or any later version published by the Free Software Foundation; -with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. -A copy of the license is included in the section entitled ``GNU -Free Documentation License''. - -\endgroup - -If you have Invariant Sections, Front-Cover Texts and Back-Cover Texts, -replace the ``with \dots\ Texts.''\ line with this: - -\begingroup -\leftskip=2em -\slshape - -with the Invariant Sections being LIST THEIR TITLES, with the -Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST. - -\endgroup - -If you have Invariant Sections without Cover Texts, or some other -combination of the three, merge those two alternatives to suit the -situation. - -If your document contains nontrivial examples of program code, we -recommend releasing these examples in parallel under your choice of -free software license, such as the GNU General Public License, -to permit their use in free software. - -\end{multicols} \ No newline at end of file diff --git a/Source/Doc/RomWBW User Guide/GPL.ltx b/Source/Doc/RomWBW User Guide/GPL.ltx deleted file mode 100644 index b95a8596..00000000 --- a/Source/Doc/RomWBW User Guide/GPL.ltx +++ /dev/null @@ -1,733 +0,0 @@ -\section{GNU General Public License} - -\begin{center} Version 3, 29 June 2007 \end{center} - -\begin{multicols}{2} - -\tiny -\setlength{\parskip}{1em} -\setlength\columnseprule{.4pt} - -Copyright \copyright{} 2007 Free Software Foundation, Inc. -\href{http://fsf.org/}{http://fsf.org/} - -Everyone is permitted to copy and distribute verbatim copies of this -license document, but changing it is not allowed. - -\bigskip -{\scriptsize \textbf{Preamble}} - -The GNU General Public License is a free, copyleft license for -software and other kinds of works. - -The licenses for most software and other practical works are designed -to take away your freedom to share and change the works. By contrast, -the GNU General Public License is intended to guarantee your freedom -to share and change all versions of a program--to make sure it -remains free software for all its users. We, the Free Software -Foundation, use the GNU General Public License for most of our -software; it applies also to any other work released this way by its -authors. You can apply it to your programs, too. - -When we speak of free software, we are referring to freedom, not -price. Our General Public Licenses are designed to make sure that you -have the freedom to distribute copies of free software (and charge -for them if you wish), that you receive source code or can get it if -you want it, that you can change the software or use pieces of it in -new free programs, and that you know you can do these things. - -To protect your rights, we need to prevent others from denying you -these rights or asking you to surrender the rights. Therefore, you -have certain responsibilities if you distribute copies of the -software, or if you modify it: responsibilities to respect the -freedom of others. - -For example, if you distribute copies of such a program, whether -gratis or for a fee, you must pass on to the recipients the same -freedoms that you received. You must make sure that they, too, -receive or can get the source code. And you must show them these -terms so they know their rights. - -Developers that use the GNU GPL protect your rights with two steps: -(1) assert copyright on the software, and (2) offer you this License -giving you legal permission to copy, distribute and/or modify it. - -For the developers' and authors' protection, the GPL clearly explains -that there is no warranty for this free software. For both users' and -authors' sake, the GPL requires that modified versions be marked as -changed, so that their problems will not be attributed erroneously to -authors of previous versions. - -Some devices are designed to deny users access to install or run -modified versions of the software inside them, although the -manufacturer can do so. This is fundamentally incompatible with the -aim of protecting users' freedom to change the software. The -systematic pattern of such abuse occurs in the area of products for -individuals to use, which is precisely where it is most unacceptable. -Therefore, we have designed this version of the GPL to prohibit the -practice for those products. If such problems arise substantially in -other domains, we stand ready to extend this provision to those -domains in future versions of the GPL, as needed to protect the -freedom of users. - -Finally, every program is threatened constantly by software patents. -States should not allow patents to restrict development and use of -software on general-purpose computers, but in those that do, we wish -to avoid the special danger that patents applied to a free program -could make it effectively proprietary. To prevent this, the GPL -assures that patents cannot be used to render the program non-free. - -The precise terms and conditions for copying, distribution and -modification follow. - -\bigskip -{\scriptsize \textbf{TERMS AND CONDITIONS}} - -\textbf{0. Definitions.} - -``This License'' refers to version 3 of the GNU General Public License. - -``Copyright'' also means copyright-like laws that apply to other -kinds of works, such as semiconductor masks. - -``The Program'' refers to any copyrightable work licensed under this -License. Each licensee is addressed as ``you''. ``Licensees'' and -``recipients'' may be individuals or organizations. - -To ``modify'' a work means to copy from or adapt all or part of the -work in a fashion requiring copyright permission, other than the -making of an exact copy. The resulting work is called a ``modified -version'' of the earlier work or a work ``based on'' the earlier work. - -A ``covered work'' means either the unmodified Program or a work -based on the Program. - -To ``propagate'' a work means to do anything with it that, without -permission, would make you directly or secondarily liable for -infringement under applicable copyright law, except executing it on a -computer or modifying a private copy. Propagation includes copying, -distribution (with or without modification), making available to the -public, and in some countries other activities as well. - -To ``convey'' a work means any kind of propagation that enables other -parties to make or receive copies. Mere interaction with a user -through a computer network, with no transfer of a copy, is not -conveying. - -An interactive user interface displays ``Appropriate Legal Notices'' -to the extent that it includes a convenient and prominently visible -feature that (1) displays an appropriate copyright notice, and (2) -tells the user that there is no warranty for the work (except to the -extent that warranties are provided), that licensees may convey the -work under this License, and how to view a copy of this License. If -the interface presents a list of user commands or options, such as a -menu, a prominent item in the list meets this criterion. - -\textbf{1. Source Code.} - -The ``source code'' for a work means the preferred form of the work -for making modifications to it. ``Object code'' means any non-source -form of a work. - -A ``Standard Interface'' means an interface that either is an -official standard defined by a recognized standards body, or, in the -case of interfaces specified for a particular programming language, -one that is widely used among developers working in that language. - -The ``System Libraries'' of an executable work include anything, -other than the work as a whole, that (a) is included in the normal -form of packaging a Major Component, but which is not part of that -Major Component, and (b) serves only to enable use of the work with -that Major Component, or to implement a Standard Interface for which -an implementation is available to the public in source code form. A -``Major Component'', in this context, means a major essential -component (kernel, window system, and so on) of the specific -operating system (if any) on which the executable work runs, or a -compiler used to produce the work, or an object code interpreter used -to run it. - -The ``Corresponding Source'' for a work in object code form means all -the source code needed to generate, install, and (for an executable -work) run the object code and to modify the work, including scripts -to control those activities. However, it does not include the work's -System Libraries, or general-purpose tools or generally available -free programs which are used unmodified in performing those -activities but which are not part of the work. For example, -Corresponding Source includes interface definition files associated -with source files for the work, and the source code for shared -libraries and dynamically linked subprograms that the work is -specifically designed to require, such as by intimate data -communication or control flow between those subprograms and other -parts of the work. - -The Corresponding Source need not include anything that users can -regenerate automatically from other parts of the Corresponding Source. - -The Corresponding Source for a work in source code form is that same -work. - -\textbf{2. Basic Permissions.} - -All rights granted under this License are granted for the term of -copyright on the Program, and are irrevocable provided the stated -conditions are met. This License explicitly affirms your unlimited -permission to run the unmodified Program. The output from running a -covered work is covered by this License only if the output, given its -content, constitutes a covered work. This License acknowledges your -rights of fair use or other equivalent, as provided by copyright law. - -You may make, run and propagate covered works that you do not convey, -without conditions so long as your license otherwise remains in -force. You may convey covered works to others for the sole purpose of -having them make modifications exclusively for you, or provide you -with facilities for running those works, provided that you comply -with the terms of this License in conveying all material for which -you do not control copyright. Those thus making or running the -covered works for you must do so exclusively on your behalf, under -your direction and control, on terms that prohibit them from making -any copies of your copyrighted material outside their relationship -with you. - -Conveying under any other circumstances is permitted solely under the -conditions stated below. Sublicensing is not allowed; section 10 -makes it unnecessary. - -\textbf{3. Protecting Users' Legal Rights From Anti-Circumvention Law.} - -No covered work shall be deemed part of an effective technological -measure under any applicable law fulfilling obligations under article -11 of the WIPO copyright treaty adopted on 20 December 1996, or -similar laws prohibiting or restricting circumvention of such measures. - -When you convey a covered work, you waive any legal power to forbid -circumvention of technological measures to the extent such -circumvention is effected by exercising rights under this License -with respect to the covered work, and you disclaim any intention to -limit operation or modification of the work as a means of enforcing, -against the work's users, your or third parties' legal rights to -forbid circumvention of technological measures. - -\textbf{4. Conveying Verbatim Copies.} - -You may convey verbatim copies of the Program's source code as you -receive it, in any medium, provided that you conspicuously and -appropriately publish on each copy an appropriate copyright notice; -keep intact all notices stating that this License and any -non-permissive terms added in accord with section 7 apply to the -code; keep intact all notices of the absence of any warranty; and -give all recipients a copy of this License along with the Program. - -You may charge any price or no price for each copy that you convey, -and you may offer support or warranty protection for a fee. - -\textbf{5. Conveying Modified Source Versions.} - -You may convey a work based on the Program, or the modifications to -produce it from the Program, in the form of source code under the -terms of section 4, provided that you also meet all of these -conditions: - -\begin{itemize}[leftmargin=*] - -\item[a)] The work must carry prominent notices stating that you -modified it, and giving a relevant date. - -\item[b)] The work must carry prominent notices stating that it is -released under this License and any conditions added under section 7. -This requirement modifies the requirement in section 4 to ``keep -intact all notices''. - -\item[c)] You must license the entire work, as a whole, under this -License to anyone who comes into possession of a copy. This License -will therefore apply, along with any applicable section 7 additional -terms, to the whole of the work, and all its parts, regardless of how -they are packaged. This License gives no permission to license the -work in any other way, but it does not invalidate such permission if -you have separately received it. - -\item[d)] If the work has interactive user interfaces, each must -display Appropriate Legal Notices; however, if the Program has -interactive interfaces that do not display Appropriate Legal Notices, -your work need not make them do so. - -\end{itemize} - -A compilation of a covered work with other separate and independent -works, which are not by their nature extensions of the covered work, -and which are not combined with it such as to form a larger program, -in or on a volume of a storage or distribution medium, is called an -``aggregate'' if the compilation and its resulting copyright are not -used to limit the access or legal rights of the compilation's users -beyond what the individual works permit. Inclusion of a covered work -in an aggregate does not cause this License to apply to the other -parts of the aggregate. - -\textbf{6. Conveying Non-Source Forms.} - -You may convey a covered work in object code form under the terms of -sections 4 and 5, provided that you also convey the machine-readable -Corresponding Source under the terms of this License, in one of these -ways: - -\begin{itemize}[leftmargin=*] - -\item[a)] Convey the object code in, or embodied in, a physical -product (including a physical distribution medium), accompanied by -the Corresponding Source fixed on a durable physical medium -customarily used for software interchange. - -\item[b)] Convey the object code in, or embodied in, a physical -product (including a physical distribution medium), accompanied by a -written offer, valid for at least three years and valid for as long -as you offer spare parts or customer support for that product model, -to give anyone who possesses the object code either (1) a copy of the -Corresponding Source for all the software in the product that is -covered by this License, on a durable physical medium customarily -used for software interchange, for a price no more than your -reasonable cost of physically performing this conveying of source, or -(2) access to copy the Corresponding Source from a network server at -no charge. - -\item[c)] Convey individual copies of the object code with a copy of -the written offer to provide the Corresponding Source. This -alternative is allowed only occasionally and noncommercially, and -only if you received the object code with such an offer, in accord -with subsection 6b. - -\item[d)] Convey the object code by offering access from a designated -place (gratis or for a charge), and offer equivalent access to the -Corresponding Source in the same way through the same place at no -further charge. You need not require recipients to copy the -Corresponding Source along with the object code. If the place to copy -the object code is a network server, the Corresponding Source may be -on a different server (operated by you or a third party) that -supports equivalent copying facilities, provided you maintain clear -directions next to the object code saying where to find the -Corresponding Source. Regardless of what server hosts the -Corresponding Source, you remain obligated to ensure that it is -available for as long as needed to satisfy these requirements. - -\item[e)] Convey the object code using peer-to-peer transmission, -provided you inform other peers where the object code and -Corresponding Source of the work are being offered to the general -public at no charge under subsection 6d. - -\end{itemize} - -A separable portion of the object code, whose source code is excluded -from the Corresponding Source as a System Library, need not be -included in conveying the object code work. - -A ``User Product'' is either (1) a ``consumer product'', which means -any tangible personal property which is normally used for personal, -family, or household purposes, or (2) anything designed or sold for -incorporation into a dwelling. In determining whether a product is a -consumer product, doubtful cases shall be resolved in favor of -coverage. For a particular product received by a particular user, -``normally used'' refers to a typical or common use of that class of -product, regardless of the status of the particular user or of the -way in which the particular user actually uses, or expects or is -expected to use, the product. A product is a consumer product -regardless of whether the product has substantial commercial, -industrial or non-consumer uses, unless such uses represent the only -significant mode of use of the product. - -``Installation Information'' for a User Product means any methods, -procedures, authorization keys, or other information required to -install and execute modified versions of a covered work in that User -Product from a modified version of its Corresponding Source. The -information must suffice to ensure that the continued functioning of -the modified object code is in no case prevented or interfered with -solely because modification has been made. - -If you convey an object code work under this section in, or with, or -specifically for use in, a User Product, and the conveying occurs as -part of a transaction in which the right of possession and use of the -User Product is transferred to the recipient in perpetuity or for a -fixed term (regardless of how the transaction is characterized), the -Corresponding Source conveyed under this section must be accompanied -by the Installation Information. But this requirement does not apply -if neither you nor any third party retains the ability to install -modified object code on the User Product (for example, the work has -been installed in ROM). - -The requirement to provide Installation Information does not include -a requirement to continue to provide support service, warranty, or -updates for a work that has been modified or installed by the -recipient, or for the User Product in which it has been modified or -installed. Access to a network may be denied when the modification -itself materially and adversely affects the operation of the network -or violates the rules and protocols for communication across the -network. - -Corresponding Source conveyed, and Installation Information provided, -in accord with this section must be in a format that is publicly -documented (and with an implementation available to the public in -source code form), and must require no special password or key for -unpacking, reading or copying. - -\textbf{7. Additional Terms.} - -``Additional permissions'' are terms that supplement the terms of -this License by making exceptions from one or more of its conditions. -Additional permissions that are applicable to the entire Program -shall be treated as though they were included in this License, to the -extent that they are valid under applicable law. If additional -permissions apply only to part of the Program, that part may be used -separately under those permissions, but the entire Program remains -governed by this License without regard to the additional permissions. - -When you convey a copy of a covered work, you may at your option -remove any additional permissions from that copy, or from any part of -it. (Additional permissions may be written to require their own -removal in certain cases when you modify the work.) You may place -additional permissions on material, added by you to a covered work, -for which you have or can give appropriate copyright permission. - -Notwithstanding any other provision of this License, for material you -add to a covered work, you may (if authorized by the copyright -holders of that material) supplement the terms of this License with -terms: - -\begin{itemize}[leftmargin=*] - -\item[a)] Disclaiming warranty or limiting liability differently from -the terms of sections 15 and 16 of this License; or - -\item[b)] Requiring preservation of specified reasonable legal -notices or author attributions in that material or in the Appropriate -Legal Notices displayed by works containing it; or - -\item[c)] Prohibiting misrepresentation of the origin of that -material, or requiring that modified versions of such material be -marked in reasonable ways as different from the original version; or - -\item[d)] Limiting the use for publicity purposes of names of -licensors or authors of the material; or - -\item[e)] Declining to grant rights under trademark law for use of -some trade names, trademarks, or service marks; or - -\item[f)] Requiring indemnification of licensors and authors of that -material by anyone who conveys the material (or modified versions of -it) with contractual assumptions of liability to the recipient, for -any liability that these contractual assumptions directly impose on -those licensors and authors. - -\end{itemize} - -All other non-permissive additional terms are considered ``further -restrictions'' within the meaning of section 10. If the Program as -you received it, or any part of it, contains a notice stating that it -is governed by this License along with a term that is a further -restriction, you may remove that term. If a license document contains -a further restriction but permits relicensing or conveying under this -License, you may add to a covered work material governed by the terms -of that license document, provided that the further restriction does -not survive such relicensing or conveying. - -If you add terms to a covered work in accord with this section, you -must place, in the relevant source files, a statement of the -additional terms that apply to those files, or a notice indicating -where to find the applicable terms. - -Additional terms, permissive or non-permissive, may be stated in the -form of a separately written license, or stated as exceptions; the -above requirements apply either way. - -\textbf{8. Termination.} - -You may not propagate or modify a covered work except as expressly -provided under this License. Any attempt otherwise to propagate or -modify it is void, and will automatically terminate your rights under -this License (including any patent licenses granted under the third -paragraph of section 11). - -However, if you cease all violation of this License, then your -license from a particular copyright holder is reinstated (a) -provisionally, unless and until the copyright holder explicitly and -finally terminates your license, and (b) permanently, if the -copyright holder fails to notify you of the violation by some -reasonable means prior to 60 days after the cessation. - -Moreover, your license from a particular copyright holder is -reinstated permanently if the copyright holder notifies you of the -violation by some reasonable means, this is the first time you have -received notice of violation of this License (for any work) from that -copyright holder, and you cure the violation prior to 30 days after -your receipt of the notice. - -Termination of your rights under this section does not terminate the -licenses of parties who have received copies or rights from you under -this License. If your rights have been terminated and not permanently -reinstated, you do not qualify to receive new licenses for the same -material under section 10. - -\textbf{9. Acceptance Not Required for Having Copies.} - -You are not required to accept this License in order to receive or -run a copy of the Program. Ancillary propagation of a covered work -occurring solely as a consequence of using peer-to-peer transmission -to receive a copy likewise does not require acceptance. However, -nothing other than this License grants you permission to propagate or -modify any covered work. These actions infringe copyright if you do -not accept this License. Therefore, by modifying or propagating a -covered work, you indicate your acceptance of this License to do so. - -\textbf{10. Automatic Licensing of Downstream Recipients.} - -Each time you convey a covered work, the recipient automatically -receives a license from the original licensors, to run, modify and -propagate that work, subject to this License. You are not responsible -for enforcing compliance by third parties with this License. - -An ``entity transaction'' is a transaction transferring control of an -organization, or substantially all assets of one, or subdividing an -organization, or merging organizations. If propagation of a covered -work results from an entity transaction, each party to that -transaction who receives a copy of the work also receives whatever -licenses to the work the party's predecessor in interest had or could -give under the previous paragraph, plus a right to possession of the -Corresponding Source of the work from the predecessor in interest, if -the predecessor has it or can get it with reasonable efforts. - -You may not impose any further restrictions on the exercise of the -rights granted or affirmed under this License. For example, you may -not impose a license fee, royalty, or other charge for exercise of -rights granted under this License, and you may not initiate -litigation (including a cross-claim or counterclaim in a lawsuit) -alleging that any patent claim is infringed by making, using, -selling, offering for sale, or importing the Program or any portion -of it. - -\textbf{11. Patents.} - -A ``contributor'' is a copyright holder who authorizes use under this -License of the Program or a work on which the Program is based. The -work thus licensed is called the contributor's ``contributor version''. - -A contributor's ``essential patent claims'' are all patent claims -owned or controlled by the contributor, whether already acquired or -hereafter acquired, that would be infringed by some manner, permitted -by this License, of making, using, or selling its contributor -version, but do not include claims that would be infringed only as a -consequence of further modification of the contributor version. For -purposes of this definition, ``control'' includes the right to grant -patent sublicenses in a manner consistent with the requirements of -this License. - -Each contributor grants you a non-exclusive, worldwide, royalty-free -patent license under the contributor's essential patent claims, to -make, use, sell, offer for sale, import and otherwise run, modify and -propagate the contents of its contributor version. - -In the following three paragraphs, a ``patent license'' is any -express agreement or commitment, however denominated, not to enforce -a patent (such as an express permission to practice a patent or -covenant not to sue for patent infringement). To ``grant'' such a -patent license to a party means to make such an agreement or -commitment not to enforce a patent against the party. - -If you convey a covered work, knowingly relying on a patent license, -and the Corresponding Source of the work is not available for anyone -to copy, free of charge and under the terms of this License, through -a publicly available network server or other readily accessible -means, then you must either (1) cause the Corresponding Source to be -so available, or (2) arrange to deprive yourself of the benefit of -the patent license for this particular work, or (3) arrange, in a -manner consistent with the requirements of this License, to extend -the patent license to downstream recipients. ``Knowingly relying'' -means you have actual knowledge that, but for the patent license, -your conveying the covered work in a country, or your recipient's use -of the covered work in a country, would infringe one or more -identifiable patents in that country that you have reason to believe -are valid. - -If, pursuant to or in connection with a single transaction or -arrangement, you convey, or propagate by procuring conveyance of, a -covered work, and grant a patent license to some of the parties -receiving the covered work authorizing them to use, propagate, modify -or convey a specific copy of the covered work, then the patent -license you grant is automatically extended to all recipients of the -covered work and works based on it. - -A patent license is ``discriminatory'' if it does not include within -the scope of its coverage, prohibits the exercise of, or is -conditioned on the non-exercise of one or more of the rights that are -specifically granted under this License. You may not convey a covered -work if you are a party to an arrangement with a third party that is -in the business of distributing software, under which you make -payment to the third party based on the extent of your activity of -conveying the work, and under which the third party grants, to any of -the parties who would receive the covered work from you, a -discriminatory patent license (a) in connection with copies of the -covered work conveyed by you (or copies made from those copies), or -(b) primarily for and in connection with specific products or -compilations that contain the covered work, unless you entered into -that arrangement, or that patent license was granted, prior to 28 -March 2007. - -Nothing in this License shall be construed as excluding or limiting -any implied license or other defenses to infringement that may -otherwise be available to you under applicable patent law. - -\textbf{12. No Surrender of Others' Freedom.} - -If conditions are imposed on you (whether by court order, agreement -or otherwise) that contradict the conditions of this License, they do -not excuse you from the conditions of this License. If you cannot -convey a covered work so as to satisfy simultaneously your -obligations under this License and any other pertinent obligations, -then as a consequence you may not convey it at all. For example, if -you agree to terms that obligate you to collect a royalty for further -conveying from those to whom you convey the Program, the only way you -could satisfy both those terms and this License would be to refrain -entirely from conveying the Program. - -\textbf{13. Use with the GNU Affero General Public License.} - -Notwithstanding any other provision of this License, you have -permission to link or combine any covered work with a work licensed -under version 3 of the GNU Affero General Public License into a -single combined work, and to convey the resulting work. The terms of -this License will continue to apply to the part which is the covered -work, but the special requirements of the GNU Affero General Public -License, section 13, concerning interaction through a network will -apply to the combination as such. - -\textbf{14. Revised Versions of this License.} - -The Free Software Foundation may publish revised and/or new versions -of the GNU General Public License from time to time. Such new -versions will be similar in spirit to the present version, but may -differ in detail to address new problems or concerns. - -Each version is given a distinguishing version number. If the Program -specifies that a certain numbered version of the GNU General Public -License ``or any later version'' applies to it, you have the option -of following the terms and conditions either of that numbered version -or of any later version published by the Free Software Foundation. If -the Program does not specify a version number of the GNU General -Public License, you may choose any version ever published by the Free -Software Foundation. - -If the Program specifies that a proxy can decide which future -versions of the GNU General Public License can be used, that proxy's -public statement of acceptance of a version permanently authorizes -you to choose that version for the Program. - -Later license versions may give you additional or different -permissions. However, no additional obligations are imposed on any -author or copyright holder as a result of your choosing to follow a -later version. - -\textbf{15. Disclaimer of Warranty.} - -THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY -APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT -HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM ``AS IS'' WITHOUT -WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT -LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR -A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND -PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE -DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR -CORRECTION. - -\textbf{16. Limitation of Liability.} - -IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING -WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR -CONVEYS THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, -INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES -ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT -NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR -LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM -TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER -PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -\textbf{17. Interpretation of Sections 15 and 16.} - -If the disclaimer of warranty and limitation of liability provided -above cannot be given local legal effect according to their terms, -reviewing courts shall apply local law that most closely approximates -an absolute waiver of all civil liability in connection with the -Program, unless a warranty or assumption of liability accompanies a -copy of the Program in return for a fee. - -END OF TERMS AND CONDITIONS - -\bigskip -{\scriptsize \textbf{How to Apply These Terms to Your New Programs}} - -If you develop a new program, and you want it to be of the greatest -possible use to the public, the best way to achieve this is to make -it free software which everyone can redistribute and change under -these terms. - -To do so, attach the following notices to the program. It is safest -to attach them to the start of each source file to most effectively -state the exclusion of warranty; and each file should have at least -the ``copyright'' line and a pointer to where the full notice is found. - -\begingroup -\leftskip=2em -\slshape - -\\ -Copyright (C) - -This program is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with this program. If not, see -\href{http://www.gnu.org/licenses/}{http://www.gnu.org/licenses/}. - -\endgroup - -Also add information on how to contact you by electronic and paper -mail. - -If the program does terminal interaction, make it output a short -notice like this when it starts in an interactive mode: - -\begingroup -\leftskip=2em -\slshape - - Copyright (C) \\ -This program comes with ABSOLUTELY NO WARRANTY; for details type -`show w'. -This is free software, and you are welcome to redistribute it -under certain conditions; type `show c' for details. - -\endgroup - -The hypothetical commands `show w' and `show c' should show the -appropriate parts of the General Public License. Of course, your -program's commands might be different; for a GUI interface, you would -use an ``about box''. - -You should also get your employer (if you work as a programmer) or -school, if any, to sign a ``copyright disclaimer'' for the program, -if necessary. For more information on this, and how to apply and -follow the GNU GPL, see -\href{http://www.gnu.org/licenses/}{http://www.gnu.org/licenses/}. - -The GNU General Public License does not permit incorporating your -program into proprietary programs. If your program is a subroutine -library, you may consider it more useful to permit linking -proprietary applications with the library. If this is what you want -to do, use the GNU Lesser General Public License instead of this -License. But first, please read -\href{http://www.gnu.org/philosophy/why-not-lgpl.html}{http://www.gnu.o -rg/philosophy/why-not-lgpl.html}. - -\end{multicols} \ No newline at end of file diff --git a/Source/Doc/RomWBW User Guide/Generate.cmd b/Source/Doc/RomWBW User Guide/Generate.cmd deleted file mode 100644 index f43109b8..00000000 --- a/Source/Doc/RomWBW User Guide/Generate.cmd +++ /dev/null @@ -1,4 +0,0 @@ -@echo off -setlocal - -texify -p -V --run-viewer Main.ltx diff --git a/Source/Doc/RomWBW User Guide/GettingStarted.ltx b/Source/Doc/RomWBW User Guide/GettingStarted.ltx deleted file mode 100644 index ccfba708..00000000 --- a/Source/Doc/RomWBW User Guide/GettingStarted.ltx +++ /dev/null @@ -1,251 +0,0 @@ -\chapter{Getting Started} - -Because of the wide variety of hardware combinations, there is no "one -case fits all" approach to getting started. The good news is that RomWBW -operates very consistently regardless of the specific hardware. The -operating systems, applications, and storage formats are all common. -However, building and testing your hardware is entirely outside the scope -of this document. The RetroBrew Computing Forum -(https://www.retrobrewcomputers.org/forum) is probably the best place to -get advice if you get stuck on hardware issues. - -\section{SIMH Simulator} - -It is not necessary, but I highly recommend running RomWBW under the SIMH -Simulator as a first step. This requires no hardware and will allow you -to see how it should look when you use it on real hardware. Since the -SIMH software is included in the distribution package, you can start it -with a single command. Using a command prompt window, navigate to the -high level directory of the distribution. Enter the command "sim" and -the simulator should start up. The first few lines of output should -look similar to Figure \ref{fig:simhboot}. You may see some benign -warning messages that can be ignored. - -\begin{figure}[ht] -\setlength\abovecaptionskip{-0.5em} -\begin{Verbatim}[commandchars=\\\{\}, fontsize=\scriptsize, frame=single, rulecolor=\color{cyan}, numbers=left] -ROM Image: 'Output\textbackslash{}SBC_simh.rom' - -RetroBrew HBIOS v2.8.0-pre.5, 2016-06-22 - -SBC Z80 @ 20.000MHz ROM=512KB RAM=512KB -UART0: IO=0x68 8250 MODE=38400,8,N,1 -SIMRTC: Wed 2016-06-22 15:10:17 -MD: UNITS=2 ROMDISK=384KB RAMDISK=384KB -HDSK: UNITS=2 - -\textsl{} -\end{Verbatim} -\caption{SIMH Boot Example} -\label{fig:simhboot} -\end{figure} - -\section{Board Setup} - -In all cases, you will want to start with a Z80/Z180 host board. Any of -the boards listed in System Requirements will work fine. I strongly -recommend that you initially work on getting just the single host board -running by itself -- don't even plug it into an ECB backplane. - -Given a host board that is assembled and passes any hardware checks -recommended by the boards designer, you need to make sure the board is -configured for RomWBW. Refer to the entry in Appendix A for your board -and confirm that all switches and jumpers on the board are set as -required by RomWBW. - -Your initial goal is to locate and program a ROM image for your host -board. The ROM images are located in the Output directory. You are -looking for the files that end in ".rom". Don't worry about all of the -other variations at this point. Refer to Table \ref{tab:basicromfiles} to -determine the ROM image that you want. - -\begin{table}[ht] -\center -%\renewcommand{\arraystretch}{1.5} -\setlength{\arrayrulewidth}{2pt} -\begin{tabular}{l l} -\toprule -\bf CPU Board & \bf ROM Image File \\ -\midrule -SBC v1/v2 & SBC\_std.rom \\ -Zeta v1 & ZETA\_std.rom \\ -Zeta v2 & ZETA2\_std.rom \\ -N8 (2511) & N8\_2511.rom \\ -N8 (2312) & N8\_2312.rom \\ -Mark IV & MK4\_std.rom \\ -\bottomrule -\end{tabular} -\caption{Basic ROM Files} -\label{tab:basicromfiles} -\end{table} - -Locate the appropriate ROM image file in the Output directory based on -Table \ref{tab:basicromfiles}. You should see that the file is exactly 512KB in size. -As indicated above in System Requirements, your system should have a ROM -capacity of 512KB or greater. You need to program the file to your ROM -using whatever tool you have. Programming a ROM chip is beyond the scope -of this document, but any feel free to ask for help at the RetroBrew -Computing Forum. The ROM image files are pure binary and should be -programmed into the ROM chip starting at address 0H thru address 7FFFH (8000H bytes). -Insert the programmed ROM chip in your system. - -Initially, you will need two external connections to your board. Power -and serial port. All of the CPU boards provide an onboard power -connection. Refer to the board designer's notes on the RBC Wiki for more -information on the power connection your board requires. - -Finally, you must connect the primary serial port of your host board to a -terminal using 38,400 baud, 8 data bits, 1 stop bit, and no parity. You can -use either a dedicated terminal or use terminal emulation software on -your PC\footnote{Under Windows, Tera Term is a good choice for terminal -emulation.}. -When connecting to a standard PC serial port, a null modem cable is required. -There is a good document on the Wiki that explains cabling of serial ports at -http://???????. \todo{Need to restore serial port cabling document on Wiki!} - -\section{Startup} - -System startup (booting) is accomplished simply by applying power. In some cases, -it may be necessary to press the reset button after applying power to get a -successful startup. - -If everything is working properly, you should see something like Figure \ref{fig:boot} -on your terminal screen. Your output will vary somewhat depending on your -specific hardware. The example shown comes from a Mark IV. - -\begin{figure}[ht] -\setlength\abovecaptionskip{-0.5em} -\begin{Verbatim}[commandchars=\\\{\}, fontsize=\scriptsize, frame=single, rulecolor=\color{cyan}, numbers=left] -RetroBrew HBIOS v2.8.0-pre.5, 2016-06-03 - -MARK IV Z180 @ 18.432MHz ROM=512KB RAM=512KB -ASCI0: IO=0x46,48 MODE=38400,8,N,1 -ASCI1: IO=0x47,49 MODE=38400,8,N,1 -DSRTC: MODE=STD Wed 2016-06-22 15:03:06 -MD: UNITS=2 ROMDISK=384KB RAMDISK=384KB -IDE: MODE=MK4 IO=0x80 UNITS=2 -IDE0: NO MEDIA -IDE1: NO MEDIA -SD: MODE=MK4 FAST OPR=0x89 CNTR=0x4A TRDR=0x4B UNITS=1 -SD0: NO MEDIA - -Unit Device Type Capacity/Mode ----------- ---------- ---------------- -------------------- -Disk 0 MD1: RAM Disk 384KB,LBA -Disk 1 MD0: ROM Disk 384KB,LBA -Disk 2 IDE0: Hard Disk -- -Disk 3 IDE1: Hard Disk -- -Disk 4 SD0: SD Card -- -Serial 0 ASCI0: RS-232 38400,8,N,1 -Serial 1 ASCI1: RS-232 38400,8,N,1 - -MARK IV Z180 Boot Loader - -Boot: (C)PM, (Z)System, (M)onitor, - (L)ist disks, or Disk Unit # ===> -\end{Verbatim} -\caption{Typical Boot Display} -\label{fig:boot} -\end{figure} - -If you see output on your terminal screen, but it is garbled/unreadable, then -check the serial port configuration settings on your terminal or terminal -emulation software. - -If you do not see any output of any kind on your terminal screen, the following -general areas should be checked: - -\begin{itemize} -\item Confirm power is being applied to the board and the the voltage is -in an acceptable range. -\item Confirm the ROM is programmed accurately by placing it back in the -programmer and using the verify function. -\item Verify the serial connection. When connecting to a PC, make sure -you have a null modem cable or adapter. -\item Review your board's construction carefully for chip orientation, bent -pins, missing or bridged solder joints, etc. -\end{itemize} - -You will find that the RetroBrew Computing Group is very helpful if you get -stuck. The best way to request assistance is to post a message on the -Forum. - -\section{Boot Display} - -As illustrated in Figure \ref{fig:boot}, RomWBW displays a lot of information -about the system and it's configuration. There are 4 basic sections to -the boot display. - -Line 1 is a banner that identifies the BIOS portion of the ROM including -version and build date. - -Lines 3-12 display the hardware inventory of the system as understood by -the ROM. Note that some of this information is \emph{not} discovered dynamically -- -it is built into the ROM. So, do not be alarmed if some parts of this -display do not match your hardware. For example, the RAM and ROM size -are configured into the ROM itself. You can refer to Appendix A for -more information on how to read the specific lines. - -Lines 14-22 contain a table that summarizes the devices in the system. This -information is used when the operating system is loaded/configured to -assign OS devices to system devices. - -Lines 24-27 is the display of the boot loader menu and prompt. The boot -loader allows you to choose the operating mode you want to initiate. These -options will be described the next section. - -\section{Loader} - -At the conclusion of a successful system startup, the loader menu/prompt will -be displayed on the console. The function of the loader is to load an -operating system or system monitor. - -\subsection{Monitor} - -Pressing 'M' at the boot loader prompt will launch a basic system monitor. -The system monitor provides very basic functions that are primarily useful -for testing components of your system. These functions include displaying -and modifying memory, reading and writing to I/O ports, etc. - -Refer to ??? for monitor operation. - -\subsection{CP/M} - -Pressing 'C' at the boot loader prompt will launch Digital Research CP/M-80 -Version 2.2. A complete copy of the CP/M operating system is imbedded in -the ROM and will be loaded directly from there, so no disk access is required. - -Initially, drive A will be a RAM drive (initialized with no files). Drive B -will be a ROM drive. The standard CP/M distribtion files are included on the -ROM drive (e.g., ASM, PIP, STAT). Drive B will initially be the logged drive. -At this point, you can execute the programs on drive B. Remember that drive B -is a ROM drive, so any attempt to write to that drive will result in an error. - -Refer to Chapter ?? for more information on using CP/M 2.2. - -\subsection{Z-System} - -Pressing 'Z' at the boot loader prompt will launch Z-System, a CP/M 2.2 -compatible operating system with many enhancements. As with CP/M, this -operating system will be loaded directly from ROM. - -The drive configuration for Z-System is identical to CP/M. - -Refer to Chapter ?? for more information on using Z-System. - -\subsection{Disk Boot} - -The boot loader also supports loading an operating system from a disk -device. In this case, you must press the number key corresponding to -the disk device containing the operating system to be loaded. The -disk device numbers are the ones listed in the device summary table. - -In order to boot from a disk device, it must be properly initialized -using the SYSCOPY application or equivalent. Attempting to boot a -disk that has no operating system will result in an error and the -boot loader prompt will be redisplayed. - -You can press 'L' at the boot loader prompt to display a list of -the disk devices available. The existence of a disk in this list -does \emph{not} mean that it has been initialized with an -operating system. diff --git a/Source/Doc/RomWBW User Guide/Licensing.ltx b/Source/Doc/RomWBW User Guide/Licensing.ltx deleted file mode 100644 index 434b4bb0..00000000 --- a/Source/Doc/RomWBW User Guide/Licensing.ltx +++ /dev/null @@ -1,5 +0,0 @@ -\chapter{Licensing} - -\input{GPL.ltx} - -\input{GFDL.ltx} diff --git a/Source/Doc/RomWBW User Guide/Logo.png b/Source/Doc/RomWBW User Guide/Logo.png deleted file mode 100644 index 3d43ff31edf46fa436e8efb106dc349f89f16612..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4630 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 Date: Wed, 18 Mar 2020 16:38:48 -0700 Subject: [PATCH 16/17] Create Common.inc --- Source/Doc/Common.inc | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 Source/Doc/Common.inc diff --git a/Source/Doc/Common.inc b/Source/Doc/Common.inc new file mode 100644 index 00000000..0358de0e --- /dev/null +++ b/Source/Doc/Common.inc @@ -0,0 +1,7 @@ +!def(ver)(2.9.2) +!def(date)(March 18, 2020) +!def(name)(RomWBW) +!def(author)(Wayne Warthen) +!def(authmail)(wwarthen@gmail.com) +!def(orgname)(RetroBrew Computers Group) +!def(orgurl)(www.retrobrewcomputers.org) \ No newline at end of file From 5264f2f4d2a2be96c0911db2c4d8b7bb84bd9309 Mon Sep 17 00:00:00 2001 From: Wayne Warthen Date: Fri, 20 Mar 2020 10:44:53 -0700 Subject: [PATCH 17/17] Documentation Updates --- Doc/RomWBW Architecture.pdf | Bin 369335 -> 369353 bytes Doc/RomWBW Getting Started.pdf | Bin 145988 -> 145885 bytes Doc/ZCPR Manual.pdf | Bin 47142 -> 53776 bytes ReadMe.md | 340 ++++---- ReadMe.txt | 315 +++---- Source/Clean.cmd | 1 - Source/Doc/Architecture.md | 68 +- Source/Doc/Common.inc | 4 +- Source/Doc/GettingStarted.md | 173 ++-- Source/Doc/ZCPR Manual/Main.ltx | 25 - Source/Doc/ZCPR Manual/zcpr.ltx | 1384 ------------------------------- Source/Makefile | 1 - 12 files changed, 461 insertions(+), 1850 deletions(-) delete mode 100644 Source/Doc/ZCPR Manual/Main.ltx delete mode 100644 Source/Doc/ZCPR Manual/zcpr.ltx diff --git a/Doc/RomWBW Architecture.pdf b/Doc/RomWBW Architecture.pdf index 9cc8f5761e5b9c209ec59656166e2877db8ba6ba..0c2782cc2ed38cdbfffe01bab3d6bcbcb93765cc 100644 GIT binary patch delta 38270 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 delta 38717 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

    G4khg<3HnYo)Y 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 >&(1$~e_B0f+u8Av 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 delta 74391 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

    J!@;o&j@7yw*Qkzb@2 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­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 diff --git a/Doc/ZCPR Manual.pdf b/Doc/ZCPR Manual.pdf index ce5f80b8033e872d74847844a538510e99bdec57..50668527d28cc91147928ddaf9b03ae40307467c 100644 GIT binary patch literal 53776 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 literal 47142 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 diff --git a/ReadMe.md b/ReadMe.md index 0899e120..0b5dcde6 100644 --- a/ReadMe.md +++ b/ReadMe.md @@ -2,7 +2,8 @@ ## Z80/Z180 System Software -Version 2.9.2 of March 18, 2020 +Version 2.9.2 +Friday 20 March 2020 Wayne Warthen @@ -26,7 +27,7 @@ RomWBW provides a complete software system for a wide variety of hobbyist Z80/Z180 CPU-based systems produced by these developer communities: - - [Retrobrew Computers](https://www.retrobrewcomputers.org) + - [RetroBrew Computers](https://www.retrobrewcomputers.org) - [RC2014](https://rc2014.co.uk) - [retro-comp](https://groups.google.com/forum/#!forum/retro-comp) @@ -79,11 +80,12 @@ distributions are found on the [releases page](https://github.com/wwarthen/RomWBW/releases) of the repository. On this page, you will probably see both pre-releases as well as normal releases. Unless you have a specific reason, I suggest you stick to the -most recent normal (not pre-release) release. Expand the “Assets” +most recent normal release (not pre-release). Expand the “Assets” drop-down for the release you want to download, then select the asset named RomWBW-vX.X.X-Package.zip. The Package asset includes all pre-built ROM and Disk images as well as full source code. The other -assets called Source Code do not have the pre-built ROM or Disk Images. +assets are Source Code only and do not have the pre-built ROM or disk +images. The pre-built ROM images will automatically detect and support a reasonable range of devices including serial ports, video adapters, @@ -109,13 +111,13 @@ directory contains the pre-built ROM and disk images. The ROM image files all end in “.rom”. Based on the table below, **carefully** pick the appropriate ROM image: -| Platform | ROM Image File | Baud | Description | -| ------------- | --------------- | ------ | ----------------------------------------------- | -| SBC V1/V2 | SBC\_std.rom | 38400 | RetroBrew SBC v1 or v2 ECB Z80 | -| Zeta V1 | ZETA\_std.rom | 38400 | RetroBrew Zeta V1 Z80, ParPortProp (optional) | -| Zeta V2 | ZETA2\_std.rom | 38400 | RetroBrew Zeta V2 Z80, ParPortProp (optional) | -| N8 | N8\_std.rom | 38400 | RetroBrew N8 Z180, date code \>= 2312 | -| Mark IV | MK4\_std.rom | 38400 | RetroBrew Mark IV ECB Z180 | +| Platform | ROM Image File | Baud | Description | +| ------------- | --------------- | -----: | ----------------------------------------------- | +| SBC V1/V2 | SBC\_std.rom | 38400 | RetroBrew SBC v1 or v2 ECB Z80 | +| Zeta V1 | ZETA\_std.rom | 38400 | RetroBrew Zeta V1 Z80, ParPortProp (optional) | +| Zeta V2 | ZETA2\_std.rom | 38400 | RetroBrew Zeta V2 Z80, ParPortProp (optional) | +| N8 | N8\_std.rom | 38400 | RetroBrew N8 Z180, date code \>= 2312 | +| Mark IV | MK4\_std.rom | 38400 | RetroBrew Mark IV ECB Z180 | | RC2014 Z80 | RCZ80\_std.rom | 115200 | RC2014 w/ Z80 CPU, requires 512K RAM/ROM module | | RC2014 Z180\* | RCZ180\_ext.rom | 115200 | RC2014 w/ Z180 CPU & 512K banked RAM/ROM module | | RC2014 Z180\* | RCZ180\_nat.rom | 115200 | RC2014 w/ Z180 CPU & 512K native RAM/ROM module | @@ -123,12 +125,12 @@ the appropriate ROM image: | SC126 | SCZ180\_126.rom | 115200 | Stephen Cousin’s SC126 Z180 | | SC130 | SCZ180\_130.rom | 115200 | Stephen Cousin’s SC130 Z180 | | SC131 | SCZ180\_131.rom | 115200 | Stephen Cousin’s SC131 Z180 | -| Dyno | DYNO\_std.rom | 38400 | Steve Garcia’s Z180 Dyno Computer | +| Dyno | DYNO\_std.rom | 38400 | Steve Garcia’s Z180 Dyno Computer | \*The RC2014 Z180 requires a separate RAM/ROM memory module. There are two types of these modules and you must pick the ROM for your type of memory module. The “ext” ROM supports Spencer’s official 512K RAM/ROM -banked memory module. The “nat” ROM supports any of the thrid-party Z180 +banked memory module. The “nat” ROM supports any of the third-party Z180 native memory modules. RomWBW will automatically attempt to detect and support typical add-on @@ -136,8 +138,8 @@ components for each of the systems supported. More information on the required system configuration and optional supported components for each ROM is found in the file called “RomList.txt” in the Binary directory. All pre-built ROM images are simple 512KB binary images. If your system -utilizes a 1MB ROM, you can just program the image into the first 512KB -of the ROM. +utilizes a larger ROM chip, you can just program the image into the +first 512KB of the ROM. Connect a serial terminal or computer with terminal emulation software to the primary serial port of your CPU board. You may need to refer to @@ -184,16 +186,19 @@ not been updated and the next time you boot your system, it will revert to the system image contained in ROM. You may find that you are unable to load the .com file because it is too large to fit in available application RAM (TPA). Unfortunately, in this case, you will not be able -to use the .com file to start your system. +to use the .com file mechanism to start your system. -If you do not have easy access to a ROM programmer, it is entirely +If you do not have easy access to a ROM programmer, it is usually possible to reprogram your system ROM using the FLASH utility from Will Sowerbutts. This application called FLASH.COM can be found on the ROM drive of any running system. In this case, you would need to transfer -the new ROM image (.rom) over to your system using XModem. The ROM image -will be too large to fit on your RAM drive, so you will need to transfer -it to a larger storage drive. Once the ROM image is on your system, you -can use the FLASH application to update your ROM: +the new ROM image (.rom) over to your system using XModem (or one of the +other mechanisms described in the Transferring Files section below). The +ROM image will be too large to fit on your RAM drive, so you will need +to transfer it to a larger storage drive. Once the ROM image is on your +system, you can use the FLASH application to update your ROM. The +following is a typical example of transferring ROM image using XModem +and flashing the chip in-situ. E>xm r rom.img @@ -226,9 +231,9 @@ device yet. Review the boot messages to see if any issues have occurred. Once you are satisfied that the ROM is working well, you will need to update the system images and RomWBW custom applications on your disk drives. The system images and custom applications are matched to the -RomWBW ROM firmware in use. If you attempt to use a disk or applications -that have not been updated to match the current ROM firmware, you are -likely to have odd problems. +RomWBW ROM firmware in use. If you attempt to boot a disk or run +applications that have not been updated to match the current ROM +firmware, you are likely to have odd problems. The simplest way to update your disk media is to just use your modern computer to overwrite the entire media with the latest disk image of @@ -272,7 +277,8 @@ The systems supported by RomWBW all have the ability to use persistent disk media. I am referring to all kinds of disk devices including floppy drives, hard disks, CF Cards, and SD Cards. Some systems have disk interfaces built-in, while others will require add-in cards. You will -need to refer to the documentation for your system. +need to refer to the documentation for your system for your specific +options. In the RomWBW bootup messages, you will see hardware discovery messages. If you have a disk drive interface, you should see messages listing @@ -304,7 +310,7 @@ an example of this: C:=IDE0:0 D:=IDE0:1 -You will probably see mroe drive letters than this. The drive letter +You will probably see more drive letters than this. The drive letter assignment process is described in more detail later in this document. Be aware that RomWBW will only assign drive letters to disk interfaces that actually have media in them. If you do not see drive letters @@ -322,13 +328,13 @@ is also explained later in this document. Once you are seeing drive letters referring to your disk media, you can follow the instructions below to begin using the disk media with the -operating system. Your disk media **must** be initialized prior to be +operating system. Your disk media **must** be initialized prior to being used. There are two ways to initialize your media for use. You can initialize the media in-place using your RomWBW system. This process is described below under Disk Initialization. In this scenario, you will need to subsequently copy any files you want to use onto the -newly initialized disk. +newly initialized disk (see Transferring Files). Alternatively, you can use your modern Windows, Linux, or Mac computer to copy a disk image onto the disk media. RomWBW comes with a variety of @@ -343,40 +349,38 @@ filesystem. On RomWBW, the initialization is done using the CLRDIR application. For example if your C: drive has been assigned to a storage device, you would use `CLRDIR C:` to initialize C: and prepare it hold files. Note that CLRDIR will prompt you for confirmation and you must -respond with a **capital** вЂY’ to confirm. Once CLDIR has completed, you -can copy files onto the drive, for example `COPY *.* C:`. Be very +respond with a **capital** вЂY’ to confirm. Once `CLDIR` has completed, +you can copy files onto the drive, for example `COPY *.* C:`. Be very careful to pay attention to your drive letter assignments prior to -running CLRDIR to avoid accidentally wiping out a filesystem that has +running `CLRDIR` to avoid accidentally wiping out a filesystem that has data on it. -Running CLRDIR on a disk device is roughly equivalent to running FORMAT -on MS-DOS. Note that unlike MS-DOS you do **not** partition your mass -storage device. CP/M knows nothing about disk partitions. You may notice -a partitioning application on your ROM disk (FDISK80), but this is -strictly for an advanced technique of adding an MS-DOS FAT filesystem to -your media in addition to the CP/M area. Do not use FDISK80 unless you -are specifically attempting to add an MS-DOS FAT filesystem to your +Running `CLRDIR` on a disk device is roughly equivalent to running +FORMAT on MS-DOS. Note that unlike MS-DOS you do **not** partition your +mass storage device. CP/M knows nothing about disk partitions. You may +notice a partitioning application on your ROM disk (FDISK80), but this +is strictly for an advanced technique of adding an MS-DOS FAT filesystem +to your media in addition to the CP/M area. Do not use FDISK80 unless +you are specifically attempting to add an MS-DOS FAT filesystem to your media. If you are using a floppy drive, you will need to physically format your floppy disk prior to use. This is only required for floppy disks, not hard disk, CF Cards, or SD Cards, etc. To format a floppy drive, you can -use the interactive application FDU. FDU is not terribly user friendly, -but is generally documented in the file “FDU.txt” found in the Doc -directory of the distribution. It is not necessary to run CLRDIR on a -floppy disk after physically formatting it – the directory is cleared as -part of the formatting. - -## Booting Disks +use the interactive application `FDU`. FDU is not terribly user +friendly, but is generally documented in the file “FDU.txt” found in the +Doc directory of the distribution. It is not necessary to run `CLRDIR` +on a floppy disk after physically formatting it – the directory is +cleared as part of the formatting. Once you have initialized a disk device and copied your desired files -onto it, you may want to boot directly to this disk device at startup. -On CP/M filesystems, you must perform one additional step to make a disk -bootable. Specifically, you need to place a copy of the oeoprating -system on the system tracks of the disk. This is done using the -`SYSCOPY` command. Let’s say you have prepared drive C: by initializing -it with `CLRDIR` and copied some files onto it. You can now make C: -bootable by running the following command: +onto it, you may want to make the disk bootable. On CP/M filesystems, +you must perform one additional step to make a disk bootable. +Specifically, you need to place a copy of the operating system on the +system tracks of the disk. This is done using the `SYSCOPY` command. +Let’s say you have prepared drive C: by initializing it with `CLRDIR` +and copied some files onto it. You can now make C: bootable by running +the following command: `B>SYSCOPY C:=B:ZSYS.SYS` @@ -395,49 +399,9 @@ you want CP/M 2.2 instead, you would replace `B:ZSYS.SYS` with Transfer system image from B:ZSYS.SYS to C: (Y/N)? Y Reading image... Writing image... Done -After successfully putting the operating system on the disk, you can -restart your system. When you get to the boot loader, notice the line -starting with “Disk:”. This line lists the disk devices that you can -choose to boot directly. - -You will notice that you do not have an option to boot a drive letter -here (like C:). This is because the operating system is not yet loaded. -When you ran `SYSCOPY` previously, remember that C: was assigned to -IDE0:0 which means device IDE0, slice 0. So, to boot the disk that you -just setup with SYSCOPY, you would choose option 1. You will then be -prompted for the slice on IDE0 that you want to boot. For now, just -press enter to choose slice 0. Once you are familiar with slices, you -can `SYSCOPY` and boot alternate slices. Here is what you would see when -booting to a disk device: - - MARK IV Boot Loader - - ROM: (M)onitor (C)P/M (Z)-System (F)orth (B)ASIC (T)-BASIC (P)LAY (U)SER ROM - Disk: (0)MD1 (1)MD0 (2)IDE0 (3)IDE1 - - Boot Selection? 2 Slice(0-9)[0]? - - Booting Disk Unit 2, Slice 0... - - Reading disk information... - Loc=D000 End=FE00 Ent=E600 Label=Unlabeled Drive - - Loading... - -Following this, you would see the normal operating system startup -messages. However, your operating system prompt will be `A>` and when -you look at the drive letter assignments, you should see that A: has -been assigned to the disk you selected to boot. - -If you receive the error message “Disk not bootable\!”, you have either -failed to properly run `SYSCOPY` on the target disk or you have selected -the wrong disk/slice. - -Note that although MD1 (RAM disk) and MD0 (ROM disk) drives are listed -in the Disk boot line, they are not currently “bootable” disks because -they have no system tracks on them. Attempting to boot to one of them, -will fail with a “Disk not bootable\!” error message and return to the -loader prompt. +Once this process succeeds, you will be able to boot directly to the +disk from the boot loader prompt. See the instructions in Booting Disks +for details on this. ## Disk Images @@ -447,8 +411,8 @@ It is generally easier to use these disk images instead of copying all the files over using XModem. You use your modern computer (Windows, Linux, MacOS) to place the disk image onto the disk media, then just move the media over to your system. In this scenario you **do not** run -`CLRDIR` or `SYSCOPY` on the drive(s). The directory prepared and the -disk is already bootable, if it is an operating system. +`CLRDIR` or `SYSCOPY` on the drive(s). The directory is prepared and the +disk is already bootable, if it is an operating system boot disk image. To copy the disk image files onto your actual media (floppy disk, CF Card, SD Card, etc.), you need to use an image writing utility on your @@ -459,7 +423,7 @@ you can use the `dd` command on Linux or MacOS. On Windows, in the For floppy media, you can use RawWriteWin and for hard disk media, you can use Win32DiskImager. In all cases, the image file should be written to the media starting at the very first block or sector of the media. -This will destroy any other data on the media. +This will **destroy** any other data on the media. The disk image files are found in the Binary directory of the distribution. Floppy disk images are prefixed with “fd\_” and hard disk @@ -474,11 +438,11 @@ well as real spinning hard disks. | Floppy | Hard | Description | | ------------- | ------------- | ---------------------------- | -| fd\_cpm22.img | hd\_cpm22.img | DRI CP/M 2.2 bootable disk | -| fd\_zsdos.img | hd\_zsdos.img | ZSDOS 1.1 bootable disk | -| fd\_nzcom.img | hd\_nzcom.img | NZCOM bootable disk | -| fd\_cpm3 | hd\_cpm3.img | DRI CP/M 3 bootable disk | -| fd\_zpm3 | hd\_zpm3.img | ZPM3 bootable disk | +| fd\_cpm22.img | hd\_cpm22.img | DRI CP/M 2.2 boot disk | +| fd\_zsdos.img | hd\_zsdos.img | ZSDOS 1.1 boot disk | +| fd\_nzcom.img | hd\_nzcom.img | NZCOM boot disk | +| fd\_cpm3 | hd\_cpm3.img | DRI CP/M 3 boot disk | +| fd\_zpm3 | hd\_zpm3.img | ZPM3 boot disk | | fd\_ws4 | hd\_ws4.img | WordStar v4 application disk | In addition to the disk images above, there is also a special hard disk @@ -512,6 +476,52 @@ boot from disk as is. You do not need to run `SYSCOPY` on them to make them bootable. However, if you upgrade your ROM, you should use `SYSCOPY` to update the system tracks. +## Booting Disks + +When starting your system, following the hardware initialization, you +will see the Boot Loader prompt. In addition, to the ROM boot options, +you will see another line listing the Disk boot options. This line lists +the disk devices that you can choose to boot directly. + +You will notice that you do not have an option to boot a drive letter +here (like C:). This is because the operating system is not yet loaded. +When you ran `SYSCOPY` previously, remember that C: was assigned to +IDE0:0 which means device IDE0, slice 0. So, to boot the disk that you +just setup with `SYSCOPY`, you would choose option 1. You will then be +prompted for the slice on IDE0 that you want to boot. For now, just +press enter to choose slice 0. Once you are familiar with slices, you +can `SYSCOPY` and boot alternate slices. Here is what you would see when +booting to a disk device: + + MARK IV Boot Loader + + ROM: (M)onitor (C)P/M (Z)-System (F)orth (B)ASIC (T)-BASIC (P)LAY (U)SER ROM + Disk: (0)MD1 (1)MD0 (2)IDE0 (3)IDE1 + + Boot Selection? 2 Slice(0-9)[0]? + + Booting Disk Unit 2, Slice 0... + + Reading disk information... + Loc=D000 End=FE00 Ent=E600 Label=Unlabeled Drive + + Loading... + +Following this, you would see the normal operating system startup +messages. However, your operating system prompt will be `A>` and when +you look at the drive letter assignments, you should see that A: has +been assigned to the disk you selected to boot. + +If you receive the error message “Disk not bootable\!”, you have either +failed to properly run `SYSCOPY` on the target disk or you have selected +the wrong disk/slice. + +Note that although MD1 (RAM disk) and MD0 (ROM disk) drives are listed +in the Disk boot line, they are not “bootable” disks because they have +no system tracks on them. Attempting to boot to one of them, will fail +with a “Disk not bootable\!” error message and return to the loader +prompt. + # General Usage Each of the operating systems and ROM applications included with RomWBW @@ -519,18 +529,18 @@ are sophisticated tools in their own right. It is not reasonable to document their usage here. However, you will find complete manuals in PDF format in the Doc directory of the distribution. The intention of this section is to document the RomWBW specific enhancements to these -OSes. +operating systems. ## ROM Disk In addition to the ROM-based operating systems and applications, the ROM -also contains a ROM disk with a small CP/M filesystem. The contents have -been optimized to provide a core set of tools and applications that are -helpful for either CP/M 2.2 and ZSDOS. Since ZSDOS is CP/M 2.2 -compatible, this works fairly well. However, you will find some files on -the ROM disk that will work with ZSDOS, but will not work on CP/M 2.2. -For example, `LDDS`, which loads the ZSDOS date/time stamper will only -run on ZSDOS. +also contains a ROM disk with a small CP/M filesystem. The contents of +the ROM disk have been chosen to provide a core set of tools and +applications that are helpful for either CP/M 2.2 or ZSDOS. Since ZSDOS +is CP/M 2.2 compatible, this works fairly well. However, you will find +some files on the ROM disk that will work with ZSDOS, but will not work +on CP/M 2.2. For example, `LDDS`, which loads the ZSDOS date/time +stamper will only run on ZSDOS. ## Drive Letter Assignment @@ -577,8 +587,8 @@ accessible to any of the operating systems. Since storage devices today are quite large, RomWBW implements a mechanism called slicing to allow up to 256 8MB filesystems on a single large storage device. This allows up to 2GB of useable space on a single -media. You can think of slices as a way to refer to the first 256 8MB -chunks of space on a single media. +media. You can think of slices as a way to refer to any of the first 256 +8MB chunks of space on a single media. Of course, the problem is that CP/M-like operating systems have only 16 drive letters (A:-P:) available. Under the covers, RomWBW allows you to @@ -594,10 +604,10 @@ devices, you will see that each device is allocated four drive letters. Referring to slices within a storage device is done by appending a :n where n is the device relative slice number from 0-255. For example, if -you have an IDE device, it will show up as IDE0: in the boot message -meaning the first IDE device. To refer to the second slice of IDE0, you -would type “IDE0:1”. So, if I wanted to use drive letter L: to refer to -the second slice of IDE0, I could use the command `ASSIGN L:=IDE0:1`. +you have an IDE device, it will show up as IDE0: in the boot messages +meaning the first IDE device. To refer to the fourth slice of IDE0, you +would type “IDE0:3”. So, if I wanted to use drive letter L: to refer to +the fourth slice of IDE0, I could use the command `ASSIGN L:=IDE0:3`. There are a couple of rules to be aware of when assigning drive letters. First, you may only refer to a specific device/slice with one drive @@ -618,22 +628,22 @@ so you will know if you make a mistake. There is no tracking of your use of slices – you will need to keep track of your use of slices yourself. Nothing automatically initializes a slice as a file system. You must do -that yourself using `CLRDIR`. Since CLRDIR works on drive letters, make -absolutely sure you know what media and slice are assigned to that drive -letter before using `CLRDIR`. +that yourself using `CLRDIR`. Since `CLRDIR` works on drive letters, +make absolutely sure you know what media and slice are assigned to that +drive letter before using `CLRDIR`. -While it probably obvious, you cannot use slices on any media less than -8MB in size. Specifically, you cannot slice RAM disk, ROM disk, floppy -disks, etc. +While it is probably obvious, you cannot use slices on any media less +than 8MB in size. Specifically, you cannot slice RAM disks, ROM disks, +floppy disks, etc. # Inbuilt ROM Applications -In addition to CP/M 2.2 and Z-System, there are several additional ROM -applications that can be launched directly from ROM. These applications -are not hosted by an operating system and so they are unable to save -files to disk devices. +In addition to CP/M 2.2 and Z-System, there are several ROM applications +that can be launched directly from ROM. These applications are not +hosted by an operating system and so they are unable to save files to +disk devices. -The following options are available at the boot loader prompt: +The following ROM applications are available at the boot loader prompt: | Application | | | ----------- | ------------------------------------------------------ | @@ -657,8 +667,8 @@ The operation of the RomWBW hosted operating systems is enhanced through several custom applications. These applications are functional on all of the OS variants included with RomWBW. -The following custom applications are found on the RomWBW ROM disk and -are, therefore, globally available. +The following custom applications are found on the ROM disk and are, +therefore, globally available. | Application | Description | | ----------- | ------------------------------------------------------------------------------------------------------------------------------------ | @@ -672,7 +682,7 @@ are, therefore, globally available. | FDISK80 | John Coffman’s Z80 hard disk partitioning tool. See documentation in Doc directory. | | FAT | Access MS-DOS FAT filesystems from RomWBW (based on FatFs). | | FLASH | Will Sowerbutts’ in-situ ROM programming utility. | -| CLRDIR | Format the directory areas of a CP/M disk. | +| CLRDIR | Initialize the directory area of a CP/M disk (Max Scane). | Some custom applications do not fit on the ROM disk. They are found on the disk image files or the individual files can be found in the @@ -697,9 +707,9 @@ identical for all hardware supported by RomWBW because RomWBW hides all hardware specifics from the operating system. Note that all of the operating systems included with RomWBW support the -same basic filesystem format. As as result, a formatted filesystem will +same basic filesystem format. As a result, a formatted filesystem will be accessible to any operating system. The only possible issue is that -if you turn of date/time stamping using the newer OSes, the older OSes +if you turn on date/time stamping using the newer OSes, the older OSes will not understand this. Files will not be corrupted, but the date/time stamps may be lost. @@ -748,7 +758,7 @@ OS via an auto command submission process. This is the Digital Research follow-up product to their very popular CP/M 2.2 operating system. While highly compatible with CP/M 2.2, it -features many enhancements. It makes better use of banked memory to +features many enhancements. It makes direct use of banked memory to increase the user program space (TPA). It also has a new suite of support tools and help system. @@ -761,14 +771,14 @@ tracks. ZPM3 is an interesting combination of the features of both CP/M 3 and ZCPR 3. Essentially, it has the features of and compatibility with both. -Like CP/M 3, to make ZPM3 boot disk, you put CPM3.SYS on the system +Like CP/M 3, to make ZPM3 boot disk, you put CPMLDR.SYS on the system tracks of the disk. ## FreeRTOS Note that Phillip Stevens has also ported FreeRTOS to run under RomWBW. -FreeRTOS is not provided in the RomWBW distribution, but is available -from Phillip. +FreeRTOS is not provided in the RomWBW distribution. You can contact +Phillip for availability. # Transferring Files @@ -790,18 +800,18 @@ file on your RomWBW system. Then, you will use your modern computers terminal program to complete the process. The `XM` application generally tries to detect the hardware you are -using and adapt to it. However, you must ensure that you have a -realiable serial connection. You must also ensure that the speed of the -connection is not too fast for XModem to handle. Alternatively, you can -ensure that hardware flow control is working properly. +using and adapt to it. However, you must ensure that you have a reliable +serial connection. You must also ensure that the speed of the connection +is not too fast for XModem to service. Alternatively, you can ensure +that hardware flow control is working properly. There is an odd interaction between XModem and partner terminal programs that can occur. Essentially, after launching `XM`, you must start the -protocol on your modern computer fairly quickly (usually about 20 +protocol on your modern computer fairly quickly (usually in about 20 seconds or so). So, if you do not pick a file on your modern computer quickly enough, you will find that the transfer completes about 16K, -then hangs. The interaction that casuses this is beyond the scope of -this document. +then hangs. The interaction that causes this is beyond the scope of this +document. ## Disk Image Transfers @@ -823,7 +833,7 @@ computer is: This process is a little complicated, but it has the benefit of allowing you to get a lot of files over to your RomWBW system quickly and with -little change of corruption. +little chance of corruption. The process can be run in reverse to get files from your RomWBW computer to a modern computer. @@ -835,14 +845,14 @@ documents. Note that the build scripts for RomWBW create the default disk images supplied with RomWBW. It is relatively easy to customize the contents of the disk images that are part of RomWBW. This is described in more -detail in the Source\\Images driectory of the distribution. +detail in the Source\\Images directory of the distribution. ## FAT Filesystem Transfers -RomWBW provides a mechanism that allows it to read and write files on an +RomWBW provides a mechanism that allows it to read and write files on a FAT formatted disk. This means that you can generally use your modern computer to make an SD Card or CF Card with a standard FAT32 filesystem -on it, then place that media in your RomWBW computer and read/write the +on it, then place that media in your RomWBW computer and access the files. When formatting the media on your modern computer, but sure to pick the @@ -868,23 +878,24 @@ and can be found in the Doc\\Contrib directory of the distribution. # Startup Command Processing -Each of the operating system supported by RomWBW provide a mechanism to +Each of the operating systems supported by RomWBW provide a mechanism to run commands at boot. This is similar to the AUTOEXEC.BAT files from MS-DOS. -With the exception of ZPM3, all operating system will look for a file +With the exception of ZPM3, all operating systems will look for a file called `PROFILE.SUB` on the system drive at boot. If it is found, it will be processed as a standard CP/M submit file. You can read about the use of the SUBMIT facility in the CP/M manuals included in the RomWBW -distribution. +distribution. Note that the boot disk must also have a copy of +`SUBMIT.EXE`. In the case of ZPM3, the file called `STARTZPM.COM` will be run at boot. To customize this file, you use the ZCPR ALIAS facility. You will need to refer to ZCPR documentation for more information on the ALIAS facility. -Note that automatic startup processing generally requires booting to a -disk drive. Since the ROM disk is not writable, there is no simple way +Note that the automatic startup processing generally requires booting to +a disk drive. Since the ROM disk is not writable, there is no simple way to add/edit a `PROFILE.SUB` file there. If you want to customize your ROM and add a `PROFILE.SUB` file to the ROM Disk, it will work, but is a lot harder than using a boot disk. @@ -900,10 +911,11 @@ a build script, but it is quite easy to do. Essentially, the creation of a custom ROM is accomplished by updating a small configuration file, then running a script to compile the software -and generate the custom ROM image. There are build scripts for Windows, -Linux, and MacOS to accommodate virtually all users. All required build -tools (compilers, assemblers, etc.) are included in the distribution, so -it is not necessary to setup a build environment on your computer. +and generate the custom ROM and disk images. There are build scripts for +Windows, Linux, and MacOS to accommodate virtually all users. All +required build tools (compilers, assemblers, etc.) are included in the +distribution, so it is not necessary to setup a build environment on +your computer. The process for building a custom ROM is documented in the ReadMe.txt file in the Source directory of the distribution. @@ -951,6 +963,12 @@ for more information on UNA. # RomWBW Distribution +All source code and distributions are maintained on GitHub. Code +contributions are very welcome. + +[RomWBW GitHub +Repository](https://github.com/wwarthen/RomWBW%7Chttps://github.com/wwarthen/RomWBW) + ## Distribution Directory Layout The RomWBW distribution is a compressed zip archive file organized in a @@ -965,14 +983,6 @@ are: | Source | Contains the source code files used to build the software and ROM images. | | Tools | Contains the MS Windows programs that are used by the build process or that may be useful in setting up your system. | -## Source Code Respository - -All source code and distributions are maintained on GitHub. Code -contributions are very welcome. - -[RomWBW GitHub -Repository](https://github.com/wwarthen/RomWBW%7Chttps://github.com/wwarthen/RomWBW) - # Acknowledgements While I have heavily modified much of the code, I want to acknowledge diff --git a/ReadMe.txt b/ReadMe.txt index ff28b03f..e7bd9d64 100644 --- a/ReadMe.txt +++ b/ReadMe.txt @@ -2,7 +2,8 @@ RomWBW Z80/Z180 System Software -Version 2.9.2 of March 18, 2020 +Version 2.9.2 +Friday 20 March 2020 Wayne Warthen wwarthen@gmail.com @@ -22,7 +23,7 @@ RomWBW provides a complete software system for a wide variety of hobbyist Z80/Z180 CPU-based systems produced by these developer communities: -- Retrobrew Computers +- RetroBrew Computers - RC2014 - retro-comp @@ -73,12 +74,12 @@ The latest RomWBW distribution downloads are maintained on GitHub in the RomWBW Repository. The fully-built distributions are found on the releases page of the repository. On this page, you will probably see both pre-releases as well as normal releases. Unless you have a specific -reason, I suggest you stick to the most recent normal (not pre-release) -release. Expand the “Assets” drop-down for the release you want to +reason, I suggest you stick to the most recent normal release (not +pre-release). Expand the “Assets” drop-down for the release you want to download, then select the asset named RomWBW-vX.X.X-Package.zip. The Package asset includes all pre-built ROM and Disk images as well as full -source code. The other assets called Source Code do not have the -pre-built ROM or Disk Images. +source code. The other assets are Source Code only and do not have the +pre-built ROM or disk images. The pre-built ROM images will automatically detect and support a reasonable range of devices including serial ports, video adapters, @@ -105,44 +106,44 @@ files all end in “.rom”. Based on the table below, carefully pick the appropriate ROM image: -------------------------------------------------------------------------- - Platform ROM Image File Baud Description + Platform ROM Image File Baud Description ---------- ---------------- -------- ------------------------------------- - SBC V1/V2 SBC_std.rom 38400 RetroBrew SBC v1 or v2 ECB Z80 + SBC V1/V2 SBC_std.rom 38400 RetroBrew SBC v1 or v2 ECB Z80 - Zeta V1 ZETA_std.rom 38400 RetroBrew Zeta V1 Z80, ParPortProp + Zeta V1 ZETA_std.rom 38400 RetroBrew Zeta V1 Z80, ParPortProp (optional) - Zeta V2 ZETA2_std.rom 38400 RetroBrew Zeta V2 Z80, ParPortProp + Zeta V2 ZETA2_std.rom 38400 RetroBrew Zeta V2 Z80, ParPortProp (optional) - N8 N8_std.rom 38400 RetroBrew N8 Z180, date code >= 2312 + N8 N8_std.rom 38400 RetroBrew N8 Z180, date code >= 2312 - Mark IV MK4_std.rom 38400 RetroBrew Mark IV ECB Z180 + Mark IV MK4_std.rom 38400 RetroBrew Mark IV ECB Z180 - RC2014 Z80 RCZ80_std.rom 115200 RC2014 w/ Z80 CPU, requires 512K + RC2014 Z80 RCZ80_std.rom 115200 RC2014 w/ Z80 CPU, requires 512K RAM/ROM module - RC2014 RCZ180_ext.rom 115200 RC2014 w/ Z180 CPU & 512K banked + RC2014 RCZ180_ext.rom 115200 RC2014 w/ Z180 CPU & 512K banked Z180* RAM/ROM module - RC2014 RCZ180_nat.rom 115200 RC2014 w/ Z180 CPU & 512K native + RC2014 RCZ180_nat.rom 115200 RC2014 w/ Z180 CPU & 512K native Z180* RAM/ROM module - Easy Z80 EZZ80_std.rom 115200 Sergey Kiselev’s Easy Z80 + Easy Z80 EZZ80_std.rom 115200 Sergey Kiselev’s Easy Z80 - SC126 SCZ180_126.rom 115200 Stephen Cousin’s SC126 Z180 + SC126 SCZ180_126.rom 115200 Stephen Cousin’s SC126 Z180 - SC130 SCZ180_130.rom 115200 Stephen Cousin’s SC130 Z180 + SC130 SCZ180_130.rom 115200 Stephen Cousin’s SC130 Z180 - SC131 SCZ180_131.rom 115200 Stephen Cousin’s SC131 Z180 + SC131 SCZ180_131.rom 115200 Stephen Cousin’s SC131 Z180 - Dyno DYNO_std.rom 38400 Steve Garcia’s Z180 Dyno Computer + Dyno DYNO_std.rom 38400 Steve Garcia’s Z180 Dyno Computer -------------------------------------------------------------------------- *The RC2014 Z180 requires a separate RAM/ROM memory module. There are two types of these modules and you must pick the ROM for your type of memory module. The “ext” ROM supports Spencer’s official 512K RAM/ROM -banked memory module. The “nat” ROM supports any of the thrid-party Z180 +banked memory module. The “nat” ROM supports any of the third-party Z180 native memory modules. RomWBW will automatically attempt to detect and support typical add-on @@ -150,8 +151,8 @@ components for each of the systems supported. More information on the required system configuration and optional supported components for each ROM is found in the file called “RomList.txt” in the Binary directory. All pre-built ROM images are simple 512KB binary images. If your system -utilizes a 1MB ROM, you can just program the image into the first 512KB -of the ROM. +utilizes a larger ROM chip, you can just program the image into the +first 512KB of the ROM. Connect a serial terminal or computer with terminal emulation software to the primary serial port of your CPU board. You may need to refer to @@ -198,16 +199,19 @@ not been updated and the next time you boot your system, it will revert to the system image contained in ROM. You may find that you are unable to load the .com file because it is too large to fit in available application RAM (TPA). Unfortunately, in this case, you will not be able -to use the .com file to start your system. +to use the .com file mechanism to start your system. -If you do not have easy access to a ROM programmer, it is entirely +If you do not have easy access to a ROM programmer, it is usually possible to reprogram your system ROM using the FLASH utility from Will Sowerbutts. This application called FLASH.COM can be found on the ROM drive of any running system. In this case, you would need to transfer -the new ROM image (.rom) over to your system using XModem. The ROM image -will be too large to fit on your RAM drive, so you will need to transfer -it to a larger storage drive. Once the ROM image is on your system, you -can use the FLASH application to update your ROM: +the new ROM image (.rom) over to your system using XModem (or one of the +other mechanisms described in the Transferring Files section below). The +ROM image will be too large to fit on your RAM drive, so you will need +to transfer it to a larger storage drive. Once the ROM image is on your +system, you can use the FLASH application to update your ROM. The +following is a typical example of transferring ROM image using XModem +and flashing the chip in-situ. E>xm r rom.img @@ -240,9 +244,9 @@ device yet. Review the boot messages to see if any issues have occurred. Once you are satisfied that the ROM is working well, you will need to update the system images and RomWBW custom applications on your disk drives. The system images and custom applications are matched to the -RomWBW ROM firmware in use. If you attempt to use a disk or applications -that have not been updated to match the current ROM firmware, you are -likely to have odd problems. +RomWBW ROM firmware in use. If you attempt to boot a disk or run +applications that have not been updated to match the current ROM +firmware, you are likely to have odd problems. The simplest way to update your disk media is to just use your modern computer to overwrite the entire media with the latest disk image of @@ -286,7 +290,8 @@ The systems supported by RomWBW all have the ability to use persistent disk media. I am referring to all kinds of disk devices including floppy drives, hard disks, CF Cards, and SD Cards. Some systems have disk interfaces built-in, while others will require add-in cards. You will -need to refer to the documentation for your system. +need to refer to the documentation for your system for your specific +options. In the RomWBW bootup messages, you will see hardware discovery messages. If you have a disk drive interface, you should see messages listing @@ -318,7 +323,7 @@ an example of this: C:=IDE0:0 D:=IDE0:1 -You will probably see mroe drive letters than this. The drive letter +You will probably see more drive letters than this. The drive letter assignment process is described in more detail later in this document. Be aware that RomWBW will only assign drive letters to disk interfaces that actually have media in them. If you do not see drive letters @@ -336,13 +341,13 @@ is also explained later in this document. Once you are seeing drive letters referring to your disk media, you can follow the instructions below to begin using the disk media with the -operating system. Your disk media must be initialized prior to be used. -There are two ways to initialize your media for use. +operating system. Your disk media must be initialized prior to being +used. There are two ways to initialize your media for use. You can initialize the media in-place using your RomWBW system. This process is described below under Disk Initialization. In this scenario, you will need to subsequently copy any files you want to use onto the -newly initialized disk. +newly initialized disk (see Transferring Files). Alternatively, you can use your modern Windows, Linux, or Mac computer to copy a disk image onto the disk media. RomWBW comes with a variety of @@ -380,16 +385,14 @@ directory of the distribution. It is not necessary to run CLRDIR on a floppy disk after physically formatting it – the directory is cleared as part of the formatting. -Booting Disks - Once you have initialized a disk device and copied your desired files -onto it, you may want to boot directly to this disk device at startup. -On CP/M filesystems, you must perform one additional step to make a disk -bootable. Specifically, you need to place a copy of the oeoprating -system on the system tracks of the disk. This is done using the SYSCOPY -command. Let’s say you have prepared drive C: by initializing it with -CLRDIR and copied some files onto it. You can now make C: bootable by -running the following command: +onto it, you may want to make the disk bootable. On CP/M filesystems, +you must perform one additional step to make a disk bootable. +Specifically, you need to place a copy of the operating system on the +system tracks of the disk. This is done using the SYSCOPY command. Let’s +say you have prepared drive C: by initializing it with CLRDIR and copied +some files onto it. You can now make C: bootable by running the +following command: B>SYSCOPY C:=B:ZSYS.SYS @@ -408,49 +411,9 @@ Here is a full example of this process. Transfer system image from B:ZSYS.SYS to C: (Y/N)? Y Reading image... Writing image... Done -After successfully putting the operating system on the disk, you can -restart your system. When you get to the boot loader, notice the line -starting with “Disk:”. This line lists the disk devices that you can -choose to boot directly. - -You will notice that you do not have an option to boot a drive letter -here (like C:). This is because the operating system is not yet loaded. -When you ran SYSCOPY previously, remember that C: was assigned to IDE0:0 -which means device IDE0, slice 0. So, to boot the disk that you just -setup with SYSCOPY, you would choose option 1. You will then be prompted -for the slice on IDE0 that you want to boot. For now, just press enter -to choose slice 0. Once you are familiar with slices, you can SYSCOPY -and boot alternate slices. Here is what you would see when booting to a -disk device: - - MARK IV Boot Loader - - ROM: (M)onitor (C)P/M (Z)-System (F)orth (B)ASIC (T)-BASIC (P)LAY (U)SER ROM - Disk: (0)MD1 (1)MD0 (2)IDE0 (3)IDE1 - - Boot Selection? 2 Slice(0-9)[0]? - - Booting Disk Unit 2, Slice 0... - - Reading disk information... - Loc=D000 End=FE00 Ent=E600 Label=Unlabeled Drive - - Loading... - -Following this, you would see the normal operating system startup -messages. However, your operating system prompt will be A> and when you -look at the drive letter assignments, you should see that A: has been -assigned to the disk you selected to boot. - -If you receive the error message “Disk not bootable!”, you have either -failed to properly run SYSCOPY on the target disk or you have selected -the wrong disk/slice. - -Note that although MD1 (RAM disk) and MD0 (ROM disk) drives are listed -in the Disk boot line, they are not currently “bootable” disks because -they have no system tracks on them. Attempting to boot to one of them, -will fail with a “Disk not bootable!” error message and return to the -loader prompt. +Once this process succeeds, you will be able to boot directly to the +disk from the boot loader prompt. See the instructions in Booting Disks +for details on this. Disk Images @@ -460,8 +423,8 @@ It is generally easier to use these disk images instead of copying all the files over using XModem. You use your modern computer (Windows, Linux, MacOS) to place the disk image onto the disk media, then just move the media over to your system. In this scenario you do not run -CLRDIR or SYSCOPY on the drive(s). The directory prepared and the disk -is already bootable, if it is an operating system. +CLRDIR or SYSCOPY on the drive(s). The directory is prepared and the +disk is already bootable, if it is an operating system boot disk image. To copy the disk image files onto your actual media (floppy disk, CF Card, SD Card, etc.), you need to use an image writing utility on your @@ -487,11 +450,11 @@ well as real spinning hard disks. Floppy Hard Description -------------- -------------- ------------------------------ - fd_cpm22.img hd_cpm22.img DRI CP/M 2.2 bootable disk - fd_zsdos.img hd_zsdos.img ZSDOS 1.1 bootable disk - fd_nzcom.img hd_nzcom.img NZCOM bootable disk - fd_cpm3 hd_cpm3.img DRI CP/M 3 bootable disk - fd_zpm3 hd_zpm3.img ZPM3 bootable disk + fd_cpm22.img hd_cpm22.img DRI CP/M 2.2 boot disk + fd_zsdos.img hd_zsdos.img ZSDOS 1.1 boot disk + fd_nzcom.img hd_nzcom.img NZCOM boot disk + fd_cpm3 hd_cpm3.img DRI CP/M 3 boot disk + fd_zpm3 hd_zpm3.img ZPM3 boot disk fd_ws4 hd_ws4.img WordStar v4 application disk In addition to the disk images above, there is also a special hard disk @@ -525,6 +488,52 @@ boot from disk as is. You do not need to run SYSCOPY on them to make them bootable. However, if you upgrade your ROM, you should use SYSCOPY to update the system tracks. +Booting Disks + +When starting your system, following the hardware initialization, you +will see the Boot Loader prompt. In addition, to the ROM boot options, +you will see another line listing the Disk boot options. This line lists +the disk devices that you can choose to boot directly. + +You will notice that you do not have an option to boot a drive letter +here (like C:). This is because the operating system is not yet loaded. +When you ran SYSCOPY previously, remember that C: was assigned to IDE0:0 +which means device IDE0, slice 0. So, to boot the disk that you just +setup with SYSCOPY, you would choose option 1. You will then be prompted +for the slice on IDE0 that you want to boot. For now, just press enter +to choose slice 0. Once you are familiar with slices, you can SYSCOPY +and boot alternate slices. Here is what you would see when booting to a +disk device: + + MARK IV Boot Loader + + ROM: (M)onitor (C)P/M (Z)-System (F)orth (B)ASIC (T)-BASIC (P)LAY (U)SER ROM + Disk: (0)MD1 (1)MD0 (2)IDE0 (3)IDE1 + + Boot Selection? 2 Slice(0-9)[0]? + + Booting Disk Unit 2, Slice 0... + + Reading disk information... + Loc=D000 End=FE00 Ent=E600 Label=Unlabeled Drive + + Loading... + +Following this, you would see the normal operating system startup +messages. However, your operating system prompt will be A> and when you +look at the drive letter assignments, you should see that A: has been +assigned to the disk you selected to boot. + +If you receive the error message “Disk not bootable!”, you have either +failed to properly run SYSCOPY on the target disk or you have selected +the wrong disk/slice. + +Note that although MD1 (RAM disk) and MD0 (ROM disk) drives are listed +in the Disk boot line, they are not “bootable” disks because they have +no system tracks on them. Attempting to boot to one of them, will fail +with a “Disk not bootable!” error message and return to the loader +prompt. + General Usage Each of the operating systems and ROM applications included with RomWBW @@ -532,18 +541,18 @@ are sophisticated tools in their own right. It is not reasonable to document their usage here. However, you will find complete manuals in PDF format in the Doc directory of the distribution. The intention of this section is to document the RomWBW specific enhancements to these -OSes. +operating systems. ROM Disk In addition to the ROM-based operating systems and applications, the ROM -also contains a ROM disk with a small CP/M filesystem. The contents have -been optimized to provide a core set of tools and applications that are -helpful for either CP/M 2.2 and ZSDOS. Since ZSDOS is CP/M 2.2 -compatible, this works fairly well. However, you will find some files on -the ROM disk that will work with ZSDOS, but will not work on CP/M 2.2. -For example, LDDS, which loads the ZSDOS date/time stamper will only run -on ZSDOS. +also contains a ROM disk with a small CP/M filesystem. The contents of +the ROM disk have been chosen to provide a core set of tools and +applications that are helpful for either CP/M 2.2 or ZSDOS. Since ZSDOS +is CP/M 2.2 compatible, this works fairly well. However, you will find +some files on the ROM disk that will work with ZSDOS, but will not work +on CP/M 2.2. For example, LDDS, which loads the ZSDOS date/time stamper +will only run on ZSDOS. Drive Letter Assignment @@ -590,8 +599,8 @@ accessible to any of the operating systems. Since storage devices today are quite large, RomWBW implements a mechanism called slicing to allow up to 256 8MB filesystems on a single large storage device. This allows up to 2GB of useable space on a single -media. You can think of slices as a way to refer to the first 256 8MB -chunks of space on a single media. +media. You can think of slices as a way to refer to any of the first 256 +8MB chunks of space on a single media. Of course, the problem is that CP/M-like operating systems have only 16 drive letters (A:-P:) available. Under the covers, RomWBW allows you to @@ -607,10 +616,10 @@ devices, you will see that each device is allocated four drive letters. Referring to slices within a storage device is done by appending a :n where n is the device relative slice number from 0-255. For example, if -you have an IDE device, it will show up as IDE0: in the boot message -meaning the first IDE device. To refer to the second slice of IDE0, you -would type “IDE0:1”. So, if I wanted to use drive letter L: to refer to -the second slice of IDE0, I could use the command ASSIGN L:=IDE0:1. +you have an IDE device, it will show up as IDE0: in the boot messages +meaning the first IDE device. To refer to the fourth slice of IDE0, you +would type “IDE0:3”. So, if I wanted to use drive letter L: to refer to +the fourth slice of IDE0, I could use the command ASSIGN L:=IDE0:3. There are a couple of rules to be aware of when assigning drive letters. First, you may only refer to a specific device/slice with one drive @@ -635,18 +644,18 @@ that yourself using CLRDIR. Since CLRDIR works on drive letters, make absolutely sure you know what media and slice are assigned to that drive letter before using CLRDIR. -While it probably obvious, you cannot use slices on any media less than -8MB in size. Specifically, you cannot slice RAM disk, ROM disk, floppy -disks, etc. +While it is probably obvious, you cannot use slices on any media less +than 8MB in size. Specifically, you cannot slice RAM disks, ROM disks, +floppy disks, etc. Inbuilt ROM Applications -In addition to CP/M 2.2 and Z-System, there are several additional ROM -applications that can be launched directly from ROM. These applications -are not hosted by an operating system and so they are unable to save -files to disk devices. +In addition to CP/M 2.2 and Z-System, there are several ROM applications +that can be launched directly from ROM. These applications are not +hosted by an operating system and so they are unable to save files to +disk devices. -The following options are available at the boot loader prompt: +The following ROM applications are available at the boot loader prompt: Application ------------- -------------------------------------------------------- @@ -670,8 +679,8 @@ The operation of the RomWBW hosted operating systems is enhanced through several custom applications. These applications are functional on all of the OS variants included with RomWBW. -The following custom applications are found on the RomWBW ROM disk and -are, therefore, globally available. +The following custom applications are found on the ROM disk and are, +therefore, globally available. -------------------------------------------------------------------------- Application Description @@ -703,7 +712,7 @@ are, therefore, globally available. FLASH Will Sowerbutts’ in-situ ROM programming utility. - CLRDIR Format the directory areas of a CP/M disk. + CLRDIR Initialize the directory area of a CP/M disk (Max Scane). -------------------------------------------------------------------------- Some custom applications do not fit on the ROM disk. They are found on @@ -728,9 +737,9 @@ identical for all hardware supported by RomWBW because RomWBW hides all hardware specifics from the operating system. Note that all of the operating systems included with RomWBW support the -same basic filesystem format. As as result, a formatted filesystem will +same basic filesystem format. As a result, a formatted filesystem will be accessible to any operating system. The only possible issue is that -if you turn of date/time stamping using the newer OSes, the older OSes +if you turn on date/time stamping using the newer OSes, the older OSes will not understand this. Files will not be corrupted, but the date/time stamps may be lost. @@ -777,7 +786,7 @@ Digital Research CP/M 3 This is the Digital Research follow-up product to their very popular CP/M 2.2 operating system. While highly compatible with CP/M 2.2, it -features many enhancements. It makes better use of banked memory to +features many enhancements. It makes direct use of banked memory to increase the user program space (TPA). It also has a new suite of support tools and help system. @@ -790,14 +799,14 @@ Simeon Cran’s ZPM3 ZPM3 is an interesting combination of the features of both CP/M 3 and ZCPR 3. Essentially, it has the features of and compatibility with both. -Like CP/M 3, to make ZPM3 boot disk, you put CPM3.SYS on the system +Like CP/M 3, to make ZPM3 boot disk, you put CPMLDR.SYS on the system tracks of the disk. FreeRTOS Note that Phillip Stevens has also ported FreeRTOS to run under RomWBW. -FreeRTOS is not provided in the RomWBW distribution, but is available -from Phillip. +FreeRTOS is not provided in the RomWBW distribution. You can contact +Phillip for availability. Transferring Files @@ -819,18 +828,18 @@ your RomWBW system. Then, you will use your modern computers terminal program to complete the process. The XM application generally tries to detect the hardware you are using -and adapt to it. However, you must ensure that you have a realiable +and adapt to it. However, you must ensure that you have a reliable serial connection. You must also ensure that the speed of the connection -is not too fast for XModem to handle. Alternatively, you can ensure that -hardware flow control is working properly. +is not too fast for XModem to service. Alternatively, you can ensure +that hardware flow control is working properly. There is an odd interaction between XModem and partner terminal programs that can occur. Essentially, after launching XM, you must start the -protocol on your modern computer fairly quickly (usually about 20 +protocol on your modern computer fairly quickly (usually in about 20 seconds or so). So, if you do not pick a file on your modern computer quickly enough, you will find that the transfer completes about 16K, -then hangs. The interaction that casuses this is beyond the scope of -this document. +then hangs. The interaction that causes this is beyond the scope of this +document. Disk Image Transfers @@ -852,7 +861,7 @@ computer is: This process is a little complicated, but it has the benefit of allowing you to get a lot of files over to your RomWBW system quickly and with -little change of corruption. +little chance of corruption. The process can be run in reverse to get files from your RomWBW computer to a modern computer. @@ -864,14 +873,14 @@ documents. Note that the build scripts for RomWBW create the default disk images supplied with RomWBW. It is relatively easy to customize the contents of the disk images that are part of RomWBW. This is described in more -detail in the Source\Images driectory of the distribution. +detail in the Source\Images directory of the distribution. FAT Filesystem Transfers -RomWBW provides a mechanism that allows it to read and write files on an +RomWBW provides a mechanism that allows it to read and write files on a FAT formatted disk. This means that you can generally use your modern computer to make an SD Card or CF Card with a standard FAT32 filesystem -on it, then place that media in your RomWBW computer and read/write the +on it, then place that media in your RomWBW computer and access the files. When formatting the media on your modern computer, but sure to pick the @@ -897,23 +906,24 @@ and can be found in the Doc\Contrib directory of the distribution. Startup Command Processing -Each of the operating system supported by RomWBW provide a mechanism to +Each of the operating systems supported by RomWBW provide a mechanism to run commands at boot. This is similar to the AUTOEXEC.BAT files from MS-DOS. -With the exception of ZPM3, all operating system will look for a file +With the exception of ZPM3, all operating systems will look for a file called PROFILE.SUB on the system drive at boot. If it is found, it will be processed as a standard CP/M submit file. You can read about the use of the SUBMIT facility in the CP/M manuals included in the RomWBW -distribution. +distribution. Note that the boot disk must also have a copy of +SUBMIT.EXE. In the case of ZPM3, the file called STARTZPM.COM will be run at boot. To customize this file, you use the ZCPR ALIAS facility. You will need to refer to ZCPR documentation for more information on the ALIAS facility. -Note that automatic startup processing generally requires booting to a -disk drive. Since the ROM disk is not writable, there is no simple way +Note that the automatic startup processing generally requires booting to +a disk drive. Since the ROM disk is not writable, there is no simple way to add/edit a PROFILE.SUB file there. If you want to customize your ROM and add a PROFILE.SUB file to the ROM Disk, it will work, but is a lot harder than using a boot disk. @@ -929,10 +939,11 @@ a build script, but it is quite easy to do. Essentially, the creation of a custom ROM is accomplished by updating a small configuration file, then running a script to compile the software -and generate the custom ROM image. There are build scripts for Windows, -Linux, and MacOS to accommodate virtually all users. All required build -tools (compilers, assemblers, etc.) are included in the distribution, so -it is not necessary to setup a build environment on your computer. +and generate the custom ROM and disk images. There are build scripts for +Windows, Linux, and MacOS to accommodate virtually all users. All +required build tools (compilers, assemblers, etc.) are included in the +distribution, so it is not necessary to setup a build environment on +your computer. The process for building a custom ROM is documented in the ReadMe.txt file in the Source directory of the distribution. @@ -978,6 +989,11 @@ Please refer to the UNA BIOS Firmware Page for more information on UNA. RomWBW Distribution +All source code and distributions are maintained on GitHub. Code +contributions are very welcome. + +RomWBW GitHub Repository + Distribution Directory Layout The RomWBW distribution is a compressed zip archive file organized in a @@ -1002,13 +1018,6 @@ are: process or that may be useful in setting up your system. -------------------------------------------------------------------------- -Source Code Respository - -All source code and distributions are maintained on GitHub. Code -contributions are very welcome. - -RomWBW GitHub Repository - Acknowledgements While I have heavily modified much of the code, I want to acknowledge diff --git a/Source/Clean.cmd b/Source/Clean.cmd index a4420787..b097dc88 100644 --- a/Source/Clean.cmd +++ b/Source/Clean.cmd @@ -13,6 +13,5 @@ setlocal & cd Forth && call Clean.cmd & endlocal setlocal & cd Fonts && call Clean.cmd & endlocal setlocal & cd BPBIOS && call Clean.cmd & endlocal setlocal & cd HBIOS && call Clean.cmd & endlocal -setlocal & cd Doc && call Clean.cmd & endlocal setlocal & cd Images && call Clean & endlocal setlocal & cd Prop && call Clean & endlocal diff --git a/Source/Doc/Architecture.md b/Source/Doc/Architecture.md index d9c0e426..9a73a4cd 100644 --- a/Source/Doc/Architecture.md +++ b/Source/Doc/Architecture.md @@ -1,22 +1,21 @@ !include(Common.inc) -!def(name)(Architecture) +!def(document)(Architecture) --- -title: RomWBW !name +title: | + | !product + | + | !document author: !author (mailto:!authmail) date: !date institution: !orgname documentclass: book +classoption: +- oneside toc: true toc-depth: 1 numbersections: true secnumdepth: 1 -classoption: -- oneside papersize: letter -fontsize: 12pt -graphics: yes -fontfamily: helvet -# fontfamilyoptions: scaled geometry: - top=1in - bottom=1in @@ -26,7 +25,8 @@ geometry: # - pass linestretch: 1.25 colorlinks: true -#pagestyle: empty +fontfamily: helvet +fontsize: 12pt header-includes: - \setlength{\headheight}{15pt} - | @@ -35,8 +35,6 @@ header-includes: \usepackage{xcolor} \usepackage{xhfill} \renewcommand*{\familydefault}{\sfdefault} - \renewcommand{\bfdefault}{b} - \renewcommand{\contentsname}{Table of Contents} \renewcommand{\maketitle}{ \begin{titlepage} \centering @@ -45,8 +43,8 @@ header-includes: \includegraphics[width=\paperwidth]{Graphics/Logo.pdf} \par \vfill \raggedleft - {\scshape \bfseries \fontsize{48pt}{56pt} \selectfont RomWBW \par} - {\bfseries \fontsize{32pt}{36pt} \selectfont !name \par} + {\scshape \bfseries \fontsize{48pt}{56pt} \selectfont !product \par} + {\bfseries \fontsize{32pt}{36pt} \selectfont !document \par} \vspace{24pt} {\huge Version !ver \\ !date \par} \vspace{24pt} @@ -71,7 +69,7 @@ include-before: ```{=latex} \clearpage \pagenumbering{arabic} -\lhead{\fancyplain{}{\nouppercase{\footnotesize \bfseries \leftmark \hfill RomWBW !name}}} +\lhead{\fancyplain{}{\nouppercase{\footnotesize \bfseries \leftmark \hfill !product !document}}} ``` Overview @@ -419,7 +417,7 @@ bits are defined as YXXXX. | C: Serial Device Unit Number | _Exit Results_ -| A: Status +| A: Status (0=OK, else error) | E: Character Received Read a character from the device unit specified in register C and return the character @@ -433,7 +431,7 @@ value in E. If no character(s) are available, this function will wait indefinite | E: Character to Send | _Exit Results_ -| A: Status +| A: Status (0=OK, else error) Send character value in register E to device specified in register C. If device is not ready to send, function will wait indefinitely. @@ -445,7 +443,7 @@ not ready to send, function will wait indefinitely. | C: Serial Device Unit Number | _Exit Results_ -| A: Status +| A: Bytes Pending Return the number of characters available to read in the input buffer of the unit specified. If the device has no input buffer, it is acceptable to return simply 0 or @@ -459,7 +457,7 @@ least one character available to read. | C: Serial Device Unit Number | _Exit Results_ -| A: Status +| A: Output Buffer Bytes Available Return the space available in the output buffer expressed as a character count. If a 16 byte output buffer contained 6 characters waiting to be sent, this function would @@ -475,7 +473,7 @@ busy and 1 means the port is ready to output a character. | DE: Line Characteristics | _Exit Results_ -| A: Status +| A: Status (0=OK, else error) Setup line characteristics (baudrate, framing, etc.) of the specified unit. Register pair DE specifies line characteristics. If DE contains -1 (0xFFFF), then the device @@ -489,7 +487,7 @@ is returned in A with zero indicating success. | C: Serial Device Unit Number | _Exit Results_ -| A: Status +| A: Status (0=OK, else error) | DE: Line Characteristics Reports the line characteristics (baudrate, framing, etc.) of the specified unit. @@ -502,7 +500,7 @@ Register pair DE contains the line characteristics upon return. | C: Serial Device Unit Number | _Exit Results_ -| A: Status +| A: Status (0=OK, else error) | C: Serial Device Attributes | D: Serial Device Type | E: Serial Device Number @@ -556,7 +554,7 @@ MID\_FD111 | 9 | 8" 1.11M Floppy | B: 0x10 | _Exit Results_ -| A: Status (0=OK, 1=Error) +| A: Status (0=OK, else error) ### Function 0x11 -- Disk Status (DIORESET) @@ -565,7 +563,7 @@ MID\_FD111 | 9 | 8" 1.11M Floppy | C: Disk Device Unit ID | _Exit Results_ -| A: Status (0=OK, 1=Error) +| A: Status (0=OK, else error) Reset the physical interface associated with the specified unit. Flag all units associated with the interface for unit initialization at next @@ -588,7 +586,7 @@ associated units of the physical interface. | DE:HL: Block Address | _Exit Results_ -| A: Status (0=OK, 1=Error) +| A: Status (0=OK, else error) Update target CHS or LBA for next I/O request on designated unit. Physical seek is typically deferred until subsequent I/O @@ -614,7 +612,7 @@ determine if the device supports LBA addressing. | HL: Buffer Address | _Exit Results_ -| A: Status (0=OK, 1=Error) +| A: Status (0=OK, else error) | E: Blocks Reaad Read Block Count sectors to buffer address starting at current target @@ -636,7 +634,7 @@ sectors requested, and 2) entire buffer area resides in upper 32K of memory. | HL: Buffer Address | _Exit Results_ -| A: Status (0=OK, 1=Error) +| A: Status (0=OK, else error) | E: Blocks Written Write Block Count sectors to buffer address starting at current target @@ -659,7 +657,7 @@ sectors being written, and 2) entire buffer area resides in upper 32K of memory. | E: Block Count | _Exit Results_ -| A: Status (0=OK, 1=Error) +| A: Status (0=OK, else error) | E: Blocks Verified \*\*\*Not Implemented\*\*\* @@ -674,7 +672,7 @@ sectors being written, and 2) entire buffer area resides in upper 32K of memory. | HL: Cylinder | _Exit Results_ -| A: Status (0=OK, 1=Error) +| A: Status (0=OK, else error) \*\*\*Not Implemented\*\*\* @@ -685,7 +683,7 @@ sectors being written, and 2) entire buffer area resides in upper 32K of memory. | C: Disk Device Unit ID | _Exit Results_ -| A: Status (0=OK, 1=Error) +| A: Status (0=OK, else error) | C: Attributes | D: Device Type | E: Device Number @@ -734,12 +732,12 @@ etc.) which is identified by a device type id from the table below. | E0: Enable Media Discovery | _Exit Results_ -| A: Status (0=OK, 1=Error) +| A: Status (0=OK, else error) | E: Media ID Report the media definition for media in specified unit. If bit 0 of E is set, then perform media discovery or verification. If no media in device, -return no media error. +function will return an error status. ### Function 0x19 -- Disk Define Media (DIODEFMED) @@ -749,7 +747,7 @@ return no media error. | E: Media ID | _Exit Results_ -| A: Status (0=OK, 1=Error) +| A: Status (0=OK, else error) \*\*\* Not implemented \*\*\* @@ -761,7 +759,7 @@ return no media error. | HL: Buffer Address | _Exit Results_ -| A: Status (0=OK, 1=Error) +| A: Status (0=OK, else error) | DE:HL: Blocks on Device | BC: Block Size @@ -776,7 +774,7 @@ block size. If media is unknown, an error will be returned. | C: Disk Device Unit ID | _Exit Results_ -| A: Status (0=OK, 1=Error) +| A: Status (0=OK, else error) | HL: Cylinders | D7: LBA Capability | BC: Block Size @@ -1199,7 +1197,7 @@ contains a negative number, then reverse scroll should be performed. | C: Video Device Unit ID | _Exit Results_ -| A: Status (# Key Codes in Keyboard Buffer) +| A:Count of Key Codes in Keyboard Buffer Return a count of the number of key codes in the keyboard buffer. If it is not possible to determine the actual number in the buffer, it is diff --git a/Source/Doc/Common.inc b/Source/Doc/Common.inc index 0358de0e..e5f87bed 100644 --- a/Source/Doc/Common.inc +++ b/Source/Doc/Common.inc @@ -1,6 +1,6 @@ !def(ver)(2.9.2) -!def(date)(March 18, 2020) -!def(name)(RomWBW) +!def(date)(!mdate) +!def(product)(RomWBW) !def(author)(Wayne Warthen) !def(authmail)(wwarthen@gmail.com) !def(orgname)(RetroBrew Computers Group) diff --git a/Source/Doc/GettingStarted.md b/Source/Doc/GettingStarted.md index 20c3112c..6815ea60 100644 --- a/Source/Doc/GettingStarted.md +++ b/Source/Doc/GettingStarted.md @@ -1,14 +1,17 @@ !include(Common.inc) -!def(name)(Getting Started) +!def(document)(Getting Started) --- -title: RomWBW !name +title: | + | !product + | + | !document author: !author (mailto:!authmail) date: !date institution: !orgname documentclass: article -toc: true classoption: - oneside +toc: true papersize: letter geometry: - top=1in @@ -24,16 +27,18 @@ header-includes: - | ```{=latex} \renewcommand*{\familydefault}{\sfdefault} + \setstretch{1.25} % for TOC ``` --- -`\clearpage`{=latex} +`\clearpage % new page after TOC`{=latex} # RomWBW ## Z80/Z180 System Software -Version !ver of !date +| Version !ver +| !date !author() [!authmail](mailto:!authmail) @@ -51,7 +56,7 @@ Version !ver of !date RomWBW provides a complete software system for a wide variety of hobbyist Z80/Z180 CPU-based systems produced by these developer communities: - * [Retrobrew Computers](https://www.retrobrewcomputers.org) + * [RetroBrew Computers](https://www.retrobrewcomputers.org) * [RC2014](https://rc2014.co.uk) * [retro-comp](https://groups.google.com/forum/#!forum/retro-comp) @@ -80,7 +85,7 @@ Multiple disk images are provided in the distribution. Most disk images contain # Installation -The latest RomWBW distribution downloads are maintained on GitHub in the [RomWBW Repository](https://github.com/wwarthen/RomWBW). The fully-built distributions are found on the [releases page](https://github.com/wwarthen/RomWBW/releases) of the repository. On this page, you will probably see both pre-releases as well as normal releases. Unless you have a specific reason, I suggest you stick to the most recent normal (not pre-release) release. Expand the "Assets" drop-down for the release you want to download, then select the asset named RomWBW-vX.X.X-Package.zip. The Package asset includes all pre-built ROM and Disk images as well as full source code. The other assets called Source Code do not have the pre-built ROM or Disk Images. +The latest RomWBW distribution downloads are maintained on GitHub in the [RomWBW Repository](https://github.com/wwarthen/RomWBW). The fully-built distributions are found on the [releases page](https://github.com/wwarthen/RomWBW/releases) of the repository. On this page, you will probably see both pre-releases as well as normal releases. Unless you have a specific reason, I suggest you stick to the most recent normal release (not pre-release). Expand the "Assets" drop-down for the release you want to download, then select the asset named RomWBW-vX.X.X-Package.zip. The Package asset includes all pre-built ROM and Disk images as well as full source code. The other assets are Source Code only and do not have the pre-built ROM or disk images. The pre-built ROM images will automatically detect and support a reasonable range of devices including serial ports, video adapters, on-board disk interfaces, and PropIO/ParPortProp boards without building a custom ROM. The distribution is a .zip archive. After downloading it to a working directory on your modern computer (Windows/Linux/Mac) use any zip tool to extract the contents of the archive. @@ -89,7 +94,7 @@ In general, you will just program your system's ROM chip with the appropriate RO Looking at the extracted distribution archive, You will see that the distribution is broken up into a few sub-directories. The Binary directory contains the pre-built ROM and disk images. The ROM image files all end in ".rom". Based on the table below, **carefully** pick the appropriate ROM image: | Platform | ROM Image File | Baud | Description | -| --------------| --------------------- | --------- | ------------------------------------------------ | +| --------------| --------------------- | --------: | ------------------------------------------------ | | SBC V1/V2 | SBC_std.rom | 38400 | RetroBrew SBC v1 or v2 ECB Z80 | | Zeta V1 | ZETA_std.rom | 38400 | RetroBrew Zeta V1 Z80, ParPortProp (optional) | | Zeta V2 | ZETA2_std.rom | 38400 | RetroBrew Zeta V2 Z80, ParPortProp (optional) | @@ -104,9 +109,9 @@ Looking at the extracted distribution archive, You will see that the distributio | SC131 | SCZ180_131.rom | 115200 | Stephen Cousin's SC131 Z180 | | Dyno | DYNO_std.rom | 38400 | Steve Garcia's Z180 Dyno Computer | -\*The RC2014 Z180 requires a separate RAM/ROM memory module. There are two types of these modules and you must pick the ROM for your type of memory module. The "ext" ROM supports Spencer's official 512K RAM/ROM banked memory module. The "nat" ROM supports any of the thrid-party Z180 native memory modules. +\*The RC2014 Z180 requires a separate RAM/ROM memory module. There are two types of these modules and you must pick the ROM for your type of memory module. The "ext" ROM supports Spencer's official 512K RAM/ROM banked memory module. The "nat" ROM supports any of the third-party Z180 native memory modules. -RomWBW will automatically attempt to detect and support typical add-on components for each of the systems supported. More information on the required system configuration and optional supported components for each ROM is found in the file called "RomList.txt" in the Binary directory. All pre-built ROM images are simple 512KB binary images. If your system utilizes a 1MB ROM, you can just program the image into the first 512KB of the ROM. +RomWBW will automatically attempt to detect and support typical add-on components for each of the systems supported. More information on the required system configuration and optional supported components for each ROM is found in the file called "RomList.txt" in the Binary directory. All pre-built ROM images are simple 512KB binary images. If your system utilizes a larger ROM chip, you can just program the image into the first 512KB of the ROM. Connect a serial terminal or computer with terminal emulation software to the primary serial port of your CPU board. You may need to refer to your hardware provider's documentation for details. A null-modem connection may be required. Set the baud rate as indicated in the table above. Set the line characteristics to 8 data bits, 1 stop bit, no parity, and no flow control. If possible, select VT-100 terminal emulation. @@ -118,9 +123,9 @@ Initially, you should try the ROM boot options. By selecting either CP/M 2.2 or Upgrading to a newer release of RomWBW is essentially just a matter of updating the ROM chip in your system. If you have spare ROM chips for your system and a ROM programmer, it is always safest to keep your existing, working ROM chip and program a new one with the new firmware. If the new one fails to boot, you can easily return to the known working ROM. -Prior to attempting to reprogram your actual ROM chip, you may wish to "try" the upgrade. With RomWBW, you can upload a new system image and load it from the command line. For each ROM image file (.rom) in the Binary directory, you will also find a corresponding application file (.com). For example, for SBC_std.rom, there is also an SBC_std.com file. You can upload the .com file to your system using XModem, then simply run the .com file. You will see your system go through the normal startup process just like it was started from ROM. However, your ROM has not been updated and the next time you boot your system, it will revert to the system image contained in ROM. You may find that you are unable to load the .com file because it is too large to fit in available application RAM (TPA). Unfortunately, in this case, you will not be able to use the .com file to start your system. +Prior to attempting to reprogram your actual ROM chip, you may wish to "try" the upgrade. With RomWBW, you can upload a new system image and load it from the command line. For each ROM image file (.rom) in the Binary directory, you will also find a corresponding application file (.com). For example, for SBC_std.rom, there is also an SBC_std.com file. You can upload the .com file to your system using XModem, then simply run the .com file. You will see your system go through the normal startup process just like it was started from ROM. However, your ROM has not been updated and the next time you boot your system, it will revert to the system image contained in ROM. You may find that you are unable to load the .com file because it is too large to fit in available application RAM (TPA). Unfortunately, in this case, you will not be able to use the .com file mechanism to start your system. -If you do not have easy access to a ROM programmer, it is entirely possible to reprogram your system ROM using the FLASH utility from Will Sowerbutts. This application called FLASH.COM can be found on the ROM drive of any running system. In this case, you would need to transfer the new ROM image (.rom) over to your system using XModem. The ROM image will be too large to fit on your RAM drive, so you will need to transfer it to a larger storage drive. Once the ROM image is on your system, you can use the FLASH application to update your ROM: +If you do not have easy access to a ROM programmer, it is usually possible to reprogram your system ROM using the FLASH utility from Will Sowerbutts. This application called FLASH.COM can be found on the ROM drive of any running system. In this case, you would need to transfer the new ROM image (.rom) over to your system using XModem (or one of the other mechanisms described in the Transferring Files section below). The ROM image will be too large to fit on your RAM drive, so you will need to transfer it to a larger storage drive. Once the ROM image is on your system, you can use the FLASH application to update your ROM. The following is a typical example of transferring ROM image using XModem and flashing the chip in-situ. ``` E>xm r rom.img @@ -149,7 +154,7 @@ Obviously, there is some risk to this approach since any issues with the program To confirm your ROM chip has been successfully updated, restart your system and boot an operating system from ROM. Do not boot from a disk device yet. Review the boot messages to see if any issues have occurred. -Once you are satisfied that the ROM is working well, you will need to update the system images and RomWBW custom applications on your disk drives. The system images and custom applications are matched to the RomWBW ROM firmware in use. If you attempt to use a disk or applications that have not been updated to match the current ROM firmware, you are likely to have odd problems. +Once you are satisfied that the ROM is working well, you will need to update the system images and RomWBW custom applications on your disk drives. The system images and custom applications are matched to the RomWBW ROM firmware in use. If you attempt to boot a disk or run applications that have not been updated to match the current ROM firmware, you are likely to have odd problems. The simplest way to update your disk media is to just use your modern computer to overwrite the entire media with the latest disk image of your choice. This process is described below in the Disk Images section. If you wish to update existing disk media in your system, you need to perform the following steps. @@ -175,7 +180,7 @@ For example: `B>COPY ASSIGN.COM C:` While the RAM/ROM disks provide a functional system, they are not useful in the long term because you cannot save data across power cycles. They are also constrained by limited space. -The systems supported by RomWBW all have the ability to use persistent disk media. I am referring to all kinds of disk devices including floppy drives, hard disks, CF Cards, and SD Cards. Some systems have disk interfaces built-in, while others will require add-in cards. You will need to refer to the documentation for your system. +The systems supported by RomWBW all have the ability to use persistent disk media. I am referring to all kinds of disk devices including floppy drives, hard disks, CF Cards, and SD Cards. Some systems have disk interfaces built-in, while others will require add-in cards. You will need to refer to the documentation for your system for your specific options. In the RomWBW bootup messages, you will see hardware discovery messages. If you have a disk drive interface, you should see messages listing device types like FD:, IDE:, PPIDE:, SD:. Additionally, you will see messages indicating the media that has been found on the interfaces. As an example, here are the messages you might see if you have an IDE interface in your system with a single CF Card inserted in the primary side of the interface: @@ -198,27 +203,25 @@ Configuring Drives... D:=IDE0:1 ``` -You will probably see mroe drive letters than this. The drive letter assignment process is described in more detail later in this document. Be aware that RomWBW will only assign drive letters to disk interfaces that actually have media in them. If you do not see drive letters assigned as expected, refer to the prior system boot messages to ensure media has been detected in the interface. Actually, there is one exception to this rule: floppy drives will be assigned a drive letter regardless of whether there is any media inserted at boot. +You will probably see more drive letters than this. The drive letter assignment process is described in more detail later in this document. Be aware that RomWBW will only assign drive letters to disk interfaces that actually have media in them. If you do not see drive letters assigned as expected, refer to the prior system boot messages to ensure media has been detected in the interface. Actually, there is one exception to this rule: floppy drives will be assigned a drive letter regardless of whether there is any media inserted at boot. Notice how each drive letter refers back to a specific disk hardware interface like IDE0. This is important as it is telling you what each drive letter refers to. Also notice that mass storage disks (like IDE) will normally have multiple drive letters assigned. The extra drive letters refer to additional "slices" on the disk. The concept of slices is also explained later in this document. -Once you are seeing drive letters referring to your disk media, you can follow the instructions below to begin using the disk media with the operating system. Your disk media **must** be initialized prior to be used. There are two ways to initialize your media for use. +Once you are seeing drive letters referring to your disk media, you can follow the instructions below to begin using the disk media with the operating system. Your disk media **must** be initialized prior to being used. There are two ways to initialize your media for use. -You can initialize the media in-place using your RomWBW system. This process is described below under Disk Initialization. In this scenario, you will need to subsequently copy any files you want to use onto the newly initialized disk. +You can initialize the media in-place using your RomWBW system. This process is described below under Disk Initialization. In this scenario, you will need to subsequently copy any files you want to use onto the newly initialized disk (see Transferring Files). Alternatively, you can use your modern Windows, Linux, or Mac computer to copy a disk image onto the disk media. RomWBW comes with a variety of disk images that are ready to use and have a much more complete set of files than you will find on the ROM disk. This process is covered below under Disk Images. ## Disk Initialization -To use a disk device, you will need to initialize the directory of the filesystem. On RomWBW, the initialization is done using the CLRDIR application. For example if your C: drive has been assigned to a storage device, you would use `CLRDIR C:` to initialize C: and prepare it hold files. Note that CLRDIR will prompt you for confirmation and you must respond with a **capital** 'Y' to confirm. Once CLDIR has completed, you can copy files onto the drive, for example `COPY *.* C:`. Be very careful to pay attention to your drive letter assignments prior to running CLRDIR to avoid accidentally wiping out a filesystem that has data on it. +To use a disk device, you will need to initialize the directory of the filesystem. On RomWBW, the initialization is done using the CLRDIR application. For example if your C: drive has been assigned to a storage device, you would use `CLRDIR C:` to initialize C: and prepare it hold files. Note that CLRDIR will prompt you for confirmation and you must respond with a **capital** 'Y' to confirm. Once `CLDIR` has completed, you can copy files onto the drive, for example `COPY *.* C:`. Be very careful to pay attention to your drive letter assignments prior to running `CLRDIR` to avoid accidentally wiping out a filesystem that has data on it. -Running CLRDIR on a disk device is roughly equivalent to running FORMAT on MS-DOS. Note that unlike MS-DOS you do **not** partition your mass storage device. CP/M knows nothing about disk partitions. You may notice a partitioning application on your ROM disk (FDISK80), but this is strictly for an advanced technique of adding an MS-DOS FAT filesystem to your media in addition to the CP/M area. Do not use FDISK80 unless you are specifically attempting to add an MS-DOS FAT filesystem to your media. +Running `CLRDIR` on a disk device is roughly equivalent to running FORMAT on MS-DOS. Note that unlike MS-DOS you do **not** partition your mass storage device. CP/M knows nothing about disk partitions. You may notice a partitioning application on your ROM disk (FDISK80), but this is strictly for an advanced technique of adding an MS-DOS FAT filesystem to your media in addition to the CP/M area. Do not use FDISK80 unless you are specifically attempting to add an MS-DOS FAT filesystem to your media. -If you are using a floppy drive, you will need to physically format your floppy disk prior to use. This is only required for floppy disks, not hard disk, CF Cards, or SD Cards, etc. To format a floppy drive, you can use the interactive application FDU. FDU is not terribly user friendly, but is generally documented in the file "FDU.txt" found in the Doc directory of the distribution. It is not necessary to run CLRDIR on a floppy disk after physically formatting it -- the directory is cleared as part of the formatting. - -## Booting Disks +If you are using a floppy drive, you will need to physically format your floppy disk prior to use. This is only required for floppy disks, not hard disk, CF Cards, or SD Cards, etc. To format a floppy drive, you can use the interactive application `FDU`. FDU is not terribly user friendly, but is generally documented in the file "FDU.txt" found in the Doc directory of the distribution. It is not necessary to run `CLRDIR` on a floppy disk after physically formatting it -- the directory is cleared as part of the formatting. -Once you have initialized a disk device and copied your desired files onto it, you may want to boot directly to this disk device at startup. On CP/M filesystems, you must perform one additional step to make a disk bootable. Specifically, you need to place a copy of the oeoprating system on the system tracks of the disk. This is done using the `SYSCOPY` command. Let's say you have prepared drive C: by initializing it with `CLRDIR` and copied some files onto it. You can now make C: bootable by running the following command: +Once you have initialized a disk device and copied your desired files onto it, you may want to make the disk bootable. On CP/M filesystems, you must perform one additional step to make a disk bootable. Specifically, you need to place a copy of the operating system on the system tracks of the disk. This is done using the `SYSCOPY` command. Let's say you have prepared drive C: by initializing it with `CLRDIR` and copied some files onto it. You can now make C: bootable by running the following command: `B>SYSCOPY C:=B:ZSYS.SYS` @@ -234,37 +237,13 @@ Transfer system image from B:ZSYS.SYS to C: (Y/N)? Y Reading image... Writing image... Done ``` -After successfully putting the operating system on the disk, you can restart your system. When you get to the boot loader, notice the line starting with "Disk:". This line lists the disk devices that you can choose to boot directly. - -You will notice that you do not have an option to boot a drive letter here (like C:). This is because the operating system is not yet loaded. When you ran `SYSCOPY` previously, remember that C: was assigned to IDE0:0 which means device IDE0, slice 0. So, to boot the disk that you just setup with SYSCOPY, you would choose option 1. You will then be prompted for the slice on IDE0 that you want to boot. For now, just press enter to choose slice 0. Once you are familiar with slices, you can `SYSCOPY` and boot alternate slices. Here is what you would see when booting to a disk device: - -``` -MARK IV Boot Loader - -ROM: (M)onitor (C)P/M (Z)-System (F)orth (B)ASIC (T)-BASIC (P)LAY (U)SER ROM -Disk: (0)MD1 (1)MD0 (2)IDE0 (3)IDE1 - -Boot Selection? 2 Slice(0-9)[0]? - -Booting Disk Unit 2, Slice 0... - -Reading disk information... -Loc=D000 End=FE00 Ent=E600 Label=Unlabeled Drive - -Loading... -``` - -Following this, you would see the normal operating system startup messages. However, your operating system prompt will be `A>` and when you look at the drive letter assignments, you should see that A: has been assigned to the disk you selected to boot. - -If you receive the error message "Disk not bootable!", you have either failed to properly run `SYSCOPY` on the target disk or you have selected the wrong disk/slice. - -Note that although MD1 (RAM disk) and MD0 (ROM disk) drives are listed in the Disk boot line, they are not currently "bootable" disks because they have no system tracks on them. Attempting to boot to one of them, will fail with a "Disk not bootable!" error message and return to the loader prompt. +Once this process succeeds, you will be able to boot directly to the disk from the boot loader prompt. See the instructions in Booting Disks for details on this. ## Disk Images -As mentioned previously, RomWBW includes a variety of disk images that contain a full set of applications for the operating systems supported. It is generally easier to use these disk images instead of copying all the files over using XModem. You use your modern computer (Windows, Linux, MacOS) to place the disk image onto the disk media, then just move the media over to your system. In this scenario you **do not** run `CLRDIR` or `SYSCOPY` on the drive(s). The directory prepared and the disk is already bootable, if it is an operating system. +As mentioned previously, RomWBW includes a variety of disk images that contain a full set of applications for the operating systems supported. It is generally easier to use these disk images instead of copying all the files over using XModem. You use your modern computer (Windows, Linux, MacOS) to place the disk image onto the disk media, then just move the media over to your system. In this scenario you **do not** run `CLRDIR` or `SYSCOPY` on the drive(s). The directory is prepared and the disk is already bootable, if it is an operating system boot disk image. -To copy the disk image files onto your actual media (floppy disk, CF Card, SD Card, etc.), you need to use an image writing utility on your modern computer. Your modern computer will need to have an appropriate interface or slot that accepts the media. To actually copy the image, you can use the `dd` command on Linux or MacOS. On Windows, in the "Tools" directory of the distribution there are two tools you can use. For floppy media, you can use RawWriteWin and for hard disk media, you can use Win32DiskImager. In all cases, the image file should be written to the media starting at the very first block or sector of the media. This will destroy any other data on the media. +To copy the disk image files onto your actual media (floppy disk, CF Card, SD Card, etc.), you need to use an image writing utility on your modern computer. Your modern computer will need to have an appropriate interface or slot that accepts the media. To actually copy the image, you can use the `dd` command on Linux or MacOS. On Windows, in the "Tools" directory of the distribution there are two tools you can use. For floppy media, you can use RawWriteWin and for hard disk media, you can use Win32DiskImager. In all cases, the image file should be written to the media starting at the very first block or sector of the media. This will **destroy** any other data on the media. The disk image files are found in the Binary directory of the distribution. Floppy disk images are prefixed with "fd_" and hard disk images are prefixed with "hd_". The floppy images are specifically for 1.44M floppy media only. Each disk image has the complete set of normal applications and tools distributed with the associated operating system or application suite. @@ -272,11 +251,11 @@ The following table shows the disk image files available. Note that the images | Floppy | Hard | Description | | --------------- | --------------- | -------------------------------------- | -| fd_cpm22.img | hd_cpm22.img | DRI CP/M 2.2 bootable disk | -| fd_zsdos.img | hd_zsdos.img | ZSDOS 1.1 bootable disk | -| fd_nzcom.img | hd_nzcom.img | NZCOM bootable disk | -| fd_cpm3 | hd_cpm3.img | DRI CP/M 3 bootable disk | -| fd_zpm3 | hd_zpm3.img | ZPM3 bootable disk | +| fd_cpm22.img | hd_cpm22.img | DRI CP/M 2.2 boot disk | +| fd_zsdos.img | hd_zsdos.img | ZSDOS 1.1 boot disk | +| fd_nzcom.img | hd_nzcom.img | NZCOM boot disk | +| fd_cpm3 | hd_cpm3.img | DRI CP/M 3 boot disk | +| fd_zpm3 | hd_zpm3.img | ZPM3 boot disk | | fd_ws4 | hd_ws4.img | WordStar v4 application disk | In addition to the disk images above, there is also a special hard disk image called hd_combo.img. This image contains all of the images above, but in a single image with 6 slices (see below for information on disk slices). At the boot loader prompt, you can choose a disk with the combo image, then select the specific slice you want. This allows a single disk to have all of the possible operating system options. @@ -296,13 +275,41 @@ Note that unlike the ROM firmware, you do **not** need to choose a disk image sp All of the disk images that indicate they are bootable (boot disk) will boot from disk as is. You do not need to run `SYSCOPY` on them to make them bootable. However, if you upgrade your ROM, you should use `SYSCOPY` to update the system tracks. +## Booting Disks + +When starting your system, following the hardware initialization, you will see the Boot Loader prompt. In addition, to the ROM boot options, you will see another line listing the Disk boot options. This line lists the disk devices that you can choose to boot directly. + +You will notice that you do not have an option to boot a drive letter here (like C:). This is because the operating system is not yet loaded. When you ran `SYSCOPY` previously, remember that C: was assigned to IDE0:0 which means device IDE0, slice 0. So, to boot the disk that you just setup with `SYSCOPY`, you would choose option 1. You will then be prompted for the slice on IDE0 that you want to boot. For now, just press enter to choose slice 0. Once you are familiar with slices, you can `SYSCOPY` and boot alternate slices. Here is what you would see when booting to a disk device: + +``` +MARK IV Boot Loader + +ROM: (M)onitor (C)P/M (Z)-System (F)orth (B)ASIC (T)-BASIC (P)LAY (U)SER ROM +Disk: (0)MD1 (1)MD0 (2)IDE0 (3)IDE1 + +Boot Selection? 2 Slice(0-9)[0]? + +Booting Disk Unit 2, Slice 0... + +Reading disk information... +Loc=D000 End=FE00 Ent=E600 Label=Unlabeled Drive + +Loading... +``` + +Following this, you would see the normal operating system startup messages. However, your operating system prompt will be `A>` and when you look at the drive letter assignments, you should see that A: has been assigned to the disk you selected to boot. + +If you receive the error message "Disk not bootable!", you have either failed to properly run `SYSCOPY` on the target disk or you have selected the wrong disk/slice. + +Note that although MD1 (RAM disk) and MD0 (ROM disk) drives are listed in the Disk boot line, they are not "bootable" disks because they have no system tracks on them. Attempting to boot to one of them, will fail with a "Disk not bootable!" error message and return to the loader prompt. + # General Usage -Each of the operating systems and ROM applications included with RomWBW are sophisticated tools in their own right. It is not reasonable to document their usage here. However, you will find complete manuals in PDF format in the Doc directory of the distribution. The intention of this section is to document the RomWBW specific enhancements to these OSes. +Each of the operating systems and ROM applications included with RomWBW are sophisticated tools in their own right. It is not reasonable to document their usage here. However, you will find complete manuals in PDF format in the Doc directory of the distribution. The intention of this section is to document the RomWBW specific enhancements to these operating systems. ## ROM Disk -In addition to the ROM-based operating systems and applications, the ROM also contains a ROM disk with a small CP/M filesystem. The contents have been optimized to provide a core set of tools and applications that are helpful for either CP/M 2.2 and ZSDOS. Since ZSDOS is CP/M 2.2 compatible, this works fairly well. However, you will find some files on the ROM disk that will work with ZSDOS, but will not work on CP/M 2.2. For example, `LDDS`, which loads the ZSDOS date/time stamper will only run on ZSDOS. +In addition to the ROM-based operating systems and applications, the ROM also contains a ROM disk with a small CP/M filesystem. The contents of the ROM disk have been chosen to provide a core set of tools and applications that are helpful for either CP/M 2.2 or ZSDOS. Since ZSDOS is CP/M 2.2 compatible, this works fairly well. However, you will find some files on the ROM disk that will work with ZSDOS, but will not work on CP/M 2.2. For example, `LDDS`, which loads the ZSDOS date/time stamper will only run on ZSDOS. ## Drive Letter Assignment @@ -318,25 +325,25 @@ When performing a ROM boot of an operating system, note that A: will be your RAM The vintage operating systems included with RomWBW were produced at a time when mass storage devices were quite small. CP/M 2.2 could only handle filesystems up to 8MB. In order to achieve compatibility across all of the operating systems supported by RomWBW, the hard disk filesystem format used is 8MB. This ensures any filesystem will be accessible to any of the operating systems. -Since storage devices today are quite large, RomWBW implements a mechanism called slicing to allow up to 256 8MB filesystems on a single large storage device. This allows up to 2GB of useable space on a single media. You can think of slices as a way to refer to the first 256 8MB chunks of space on a single media. +Since storage devices today are quite large, RomWBW implements a mechanism called slicing to allow up to 256 8MB filesystems on a single large storage device. This allows up to 2GB of useable space on a single media. You can think of slices as a way to refer to any of the first 256 8MB chunks of space on a single media. Of course, the problem is that CP/M-like operating systems have only 16 drive letters (A:-P:) available. Under the covers, RomWBW allows you to use any drive letter to refer to any slice of any media. The `ASSIGN` command is provided to allow you to view or change the drive letter mappings at any time. At startup, the operating system will automatically allocate a reasonable number of drive letters to the available storage devices. The allocation will depend on the number of large storage devices available at boot. For example, if you have only one hard disk type media, you will see that 8 drive letters are assigned to the first 8 slices of that media. If you have two large storage devices, you will see that each device is allocated four drive letters. -Referring to slices within a storage device is done by appending a :n where n is the device relative slice number from 0-255. For example, if you have an IDE device, it will show up as IDE0: in the boot message meaning the first IDE device. To refer to the second slice of IDE0, you would type "IDE0:1". So, if I wanted to use drive letter L: to refer to the second slice of IDE0, I could use the command `ASSIGN L:=IDE0:1`. +Referring to slices within a storage device is done by appending a :n where n is the device relative slice number from 0-255. For example, if you have an IDE device, it will show up as IDE0: in the boot messages meaning the first IDE device. To refer to the fourth slice of IDE0, you would type "IDE0:3". So, if I wanted to use drive letter L: to refer to the fourth slice of IDE0, I could use the command `ASSIGN L:=IDE0:3`. There are a couple of rules to be aware of when assigning drive letters. First, you may only refer to a specific device/slice with one drive letter. Said another way, you cannot have multiple drive letters referring to a single device/slice at the same time. Second, there must always be a drive assigned to A:. Any attempt to violate these rules will be blocked by the `ASSIGN` command. Unlike MS-DOS partitions, slices are not allocated -- there is no partitioning of slices. Think of every hard disk type device as having a pre-allocated set of 256 8MB slices at the start of the media. You can refer to any of them simply by assigning a drive letter. RomWBW will not check to see if there is anything else on the hard disk in the slice you are referring to, nor will it verify that the hard disk media is large enough to have a slice at the location you refer to. If you attempt to write past the end of your media, you will get an I/O error displayed, so you will know if you make a mistake. There is no tracking of your use of slices -- you will need to keep track of your use of slices yourself. -Nothing automatically initializes a slice as a file system. You must do that yourself using `CLRDIR`. Since CLRDIR works on drive letters, make absolutely sure you know what media and slice are assigned to that drive letter before using `CLRDIR`. +Nothing automatically initializes a slice as a file system. You must do that yourself using `CLRDIR`. Since `CLRDIR` works on drive letters, make absolutely sure you know what media and slice are assigned to that drive letter before using `CLRDIR`. -While it probably obvious, you cannot use slices on any media less than 8MB in size. Specifically, you cannot slice RAM disk, ROM disk, floppy disks, etc. +While it is probably obvious, you cannot use slices on any media less than 8MB in size. Specifically, you cannot slice RAM disks, ROM disks, floppy disks, etc. # Inbuilt ROM Applications -In addition to CP/M 2.2 and Z-System, there are several additional ROM applications that can be launched directly from ROM. These applications are not hosted by an operating system and so they are unable to save files to disk devices. +In addition to CP/M 2.2 and Z-System, there are several ROM applications that can be launched directly from ROM. These applications are not hosted by an operating system and so they are unable to save files to disk devices. -The following options are available at the boot loader prompt: +The following ROM applications are available at the boot loader prompt: | Application | | | ----------- | -------------------------------------------------------------- | @@ -354,7 +361,7 @@ Space is available in the ROM image for the inclusion of other software. Any inb The operation of the RomWBW hosted operating systems is enhanced through several custom applications. These applications are functional on all of the OS variants included with RomWBW. -The following custom applications are found on the RomWBW ROM disk and are, therefore, globally available. +The following custom applications are found on the ROM disk and are, therefore, globally available. | Application | Description | | ----------- | -------------------------------------------------------------- | @@ -368,7 +375,7 @@ The following custom applications are found on the RomWBW ROM disk and are, ther | FDISK80 | John Coffman's Z80 hard disk partitioning tool. See documentation in Doc directory. | | FAT | Access MS-DOS FAT filesystems from RomWBW (based on FatFs). | | FLASH | Will Sowerbutts' in-situ ROM programming utility. | -| CLRDIR | Format the directory areas of a CP/M disk. | +| CLRDIR | Initialize the directory area of a CP/M disk (Max Scane). | Some custom applications do not fit on the ROM disk. They are found on the disk image files or the individual files can be found in the Binary\\Apps directory of the distribution. @@ -383,7 +390,7 @@ There is additional documentation on some of these applications at the [RomWBW A One of the primary goals of RomWBW is to expose a set of generic hardware functions that make it easy to adapt operating systems to any hardware supported by RomWBW. As a result, there are now 5 operating systems that have been adapted to run under RomWBW. The adaptations are identical for all hardware supported by RomWBW because RomWBW hides all hardware specifics from the operating system. -Note that all of the operating systems included with RomWBW support the same basic filesystem format. As as result, a formatted filesystem will be accessible to any operating system. The only possible issue is that if you turn of date/time stamping using the newer OSes, the older OSes will not understand this. Files will not be corrupted, but the date/time stamps may be lost. +Note that all of the operating systems included with RomWBW support the same basic filesystem format. As a result, a formatted filesystem will be accessible to any operating system. The only possible issue is that if you turn on date/time stamping using the newer OSes, the older OSes will not understand this. Files will not be corrupted, but the date/time stamps may be lost. The following sections briefly describe the operating system options currently available. @@ -403,7 +410,7 @@ To use, NZCOM, you must run through a simple configuration process. This is wel ## Digital Research CP/M 3 -This is the Digital Research follow-up product to their very popular CP/M 2.2 operating system. While highly compatible with CP/M 2.2, it features many enhancements. It makes better use of banked memory to increase the user program space (TPA). It also has a new suite of support tools and help system. +This is the Digital Research follow-up product to their very popular CP/M 2.2 operating system. While highly compatible with CP/M 2.2, it features many enhancements. It makes direct use of banked memory to increase the user program space (TPA). It also has a new suite of support tools and help system. Note that to make a CP/M 3 boot disk, you actually place CPMLDR.SYS on the system tracks of the disk. You do not place CPM3.SYS on the system tracks. @@ -411,11 +418,11 @@ Note that to make a CP/M 3 boot disk, you actually place CPMLDR.SYS on the syste ZPM3 is an interesting combination of the features of both CP/M 3 and ZCPR 3. Essentially, it has the features of and compatibility with both. -Like CP/M 3, to make ZPM3 boot disk, you put CPM3.SYS on the system tracks of the disk. +Like CP/M 3, to make ZPM3 boot disk, you put CPMLDR.SYS on the system tracks of the disk. ## FreeRTOS -Note that Phillip Stevens has also ported FreeRTOS to run under RomWBW. FreeRTOS is not provided in the RomWBW distribution, but is available from Phillip. +Note that Phillip Stevens has also ported FreeRTOS to run under RomWBW. FreeRTOS is not provided in the RomWBW distribution. You can contact Phillip for availability. # Transferring Files @@ -427,9 +434,9 @@ RomWBW provides an serial file transfer program called XModem that has been adap You can type `XM` by itself to get usage information. In general, you will run `XM` with parameters to indicate you want to send or receive a file on your RomWBW system. Then, you will use your modern computers terminal program to complete the process. -The `XM` application generally tries to detect the hardware you are using and adapt to it. However, you must ensure that you have a realiable serial connection. You must also ensure that the speed of the connection is not too fast for XModem to handle. Alternatively, you can ensure that hardware flow control is working properly. +The `XM` application generally tries to detect the hardware you are using and adapt to it. However, you must ensure that you have a reliable serial connection. You must also ensure that the speed of the connection is not too fast for XModem to service. Alternatively, you can ensure that hardware flow control is working properly. -There is an odd interaction between XModem and partner terminal programs that can occur. Essentially, after launching `XM`, you must start the protocol on your modern computer fairly quickly (usually about 20 seconds or so). So, if you do not pick a file on your modern computer quickly enough, you will find that the transfer completes about 16K, then hangs. The interaction that casuses this is beyond the scope of this document. +There is an odd interaction between XModem and partner terminal programs that can occur. Essentially, after launching `XM`, you must start the protocol on your modern computer fairly quickly (usually in about 20 seconds or so). So, if you do not pick a file on your modern computer quickly enough, you will find that the transfer completes about 16K, then hangs. The interaction that causes this is beyond the scope of this document. ## Disk Image Transfers @@ -442,17 +449,17 @@ The general process to get files from your modern computer to a RomWBW computer 3. Use a disk imaging tool to copy the RomWBW filesystem image onto the media. 4. Move the media back to the RomWBW computer. -This process is a little complicated, but it has the benefit of allowing you to get a lot of files over to your RomWBW system quickly and with little change of corruption. +This process is a little complicated, but it has the benefit of allowing you to get a lot of files over to your RomWBW system quickly and with little chance of corruption. The process can be run in reverse to get files from your RomWBW computer to a modern computer. The exact use of these tools is a bit too much for this document, but the tools are all included in the RomWBW distribution along with usage documents. -Note that the build scripts for RomWBW create the default disk images supplied with RomWBW. It is relatively easy to customize the contents of the disk images that are part of RomWBW. This is described in more detail in the Source\\Images driectory of the distribution. +Note that the build scripts for RomWBW create the default disk images supplied with RomWBW. It is relatively easy to customize the contents of the disk images that are part of RomWBW. This is described in more detail in the Source\\Images directory of the distribution. ## FAT Filesystem Transfers -RomWBW provides a mechanism that allows it to read and write files on an FAT formatted disk. This means that you can generally use your modern computer to make an SD Card or CF Card with a standard FAT32 filesystem on it, then place that media in your RomWBW computer and read/write the files. +RomWBW provides a mechanism that allows it to read and write files on a FAT formatted disk. This means that you can generally use your modern computer to make an SD Card or CF Card with a standard FAT32 filesystem on it, then place that media in your RomWBW computer and access the files. When formatting the media on your modern computer, but sure to pick the FAT filesystem. NTFS and other filesystems will not work. @@ -464,19 +471,19 @@ For advanced users, it is possible to create a hybrid disk that contains CP/M sl # Startup Command Processing -Each of the operating system supported by RomWBW provide a mechanism to run commands at boot. This is similar to the AUTOEXEC.BAT files from MS-DOS. +Each of the operating systems supported by RomWBW provide a mechanism to run commands at boot. This is similar to the AUTOEXEC.BAT files from MS-DOS. -With the exception of ZPM3, all operating system will look for a file called `PROFILE.SUB` on the system drive at boot. If it is found, it will be processed as a standard CP/M submit file. You can read about the use of the SUBMIT facility in the CP/M manuals included in the RomWBW distribution. +With the exception of ZPM3, all operating systems will look for a file called `PROFILE.SUB` on the system drive at boot. If it is found, it will be processed as a standard CP/M submit file. You can read about the use of the SUBMIT facility in the CP/M manuals included in the RomWBW distribution. Note that the boot disk must also have a copy of `SUBMIT.EXE`. In the case of ZPM3, the file called `STARTZPM.COM` will be run at boot. To customize this file, you use the ZCPR ALIAS facility. You will need to refer to ZCPR documentation for more information on the ALIAS facility. -Note that automatic startup processing generally requires booting to a disk drive. Since the ROM disk is not writable, there is no simple way to add/edit a `PROFILE.SUB` file there. If you want to customize your ROM and add a `PROFILE.SUB` file to the ROM Disk, it will work, but is a lot harder than using a boot disk. +Note that the automatic startup processing generally requires booting to a disk drive. Since the ROM disk is not writable, there is no simple way to add/edit a `PROFILE.SUB` file there. If you want to customize your ROM and add a `PROFILE.SUB` file to the ROM Disk, it will work, but is a lot harder than using a boot disk. # ROM Customization The pre-built ROM images are configured for the basic capabilities of each platform. Additionally, some of the typical add-on hardware for each platform will be automatically detected and used. If you want to go beyond this, RomWBW provides a very flexible configuration mechanism based on configuration files. Creating a customized ROM requires running a build script, but it is quite easy to do. -Essentially, the creation of a custom ROM is accomplished by updating a small configuration file, then running a script to compile the software and generate the custom ROM image. There are build scripts for Windows, Linux, and MacOS to accommodate virtually all users. All required build tools (compilers, assemblers, etc.) are included in the distribution, so it is not necessary to setup a build environment on your computer. +Essentially, the creation of a custom ROM is accomplished by updating a small configuration file, then running a script to compile the software and generate the custom ROM and disk images. There are build scripts for Windows, Linux, and MacOS to accommodate virtually all users. All required build tools (compilers, assemblers, etc.) are included in the distribution, so it is not necessary to setup a build environment on your computer. The process for building a custom ROM is documented in the ReadMe.txt file in the Source directory of the distribution. @@ -503,6 +510,10 @@ Please refer to the [UNA BIOS Firmware Page](https://www.retrobrewcomputers.org/ # RomWBW Distribution +All source code and distributions are maintained on GitHub. Code contributions are very welcome. + +[RomWBW GitHub Repository](https://github.com/wwarthen/RomWBW|https://github.com/wwarthen/RomWBW) + ## Distribution Directory Layout The RomWBW distribution is a compressed zip archive file organized in a set of directories. Each of these directories has it's own ReadMe.txt file describing the contents in detail. In summary, these directories are: @@ -514,12 +525,6 @@ The RomWBW distribution is a compressed zip archive file organized in a set of d | Source | Contains the source code files used to build the software and ROM images. | | Tools | Contains the MS Windows programs that are used by the build process or that may be useful in setting up your system. | -## Source Code Respository - -All source code and distributions are maintained on GitHub. Code contributions are very welcome. - -[RomWBW GitHub Repository](https://github.com/wwarthen/RomWBW|https://github.com/wwarthen/RomWBW) - # Acknowledgements While I have heavily modified much of the code, I want to acknowledge that much of the work is derived from the work of others in the RetroBrew Computers Community including Andrew Lynch, Dan Werner, Max Scane, David Giles, John Coffman, and probably many others I am not clearly aware of (let me know if I omitted someone!). diff --git a/Source/Doc/ZCPR Manual/Main.ltx b/Source/Doc/ZCPR Manual/Main.ltx deleted file mode 100644 index 2cc18498..00000000 --- a/Source/Doc/ZCPR Manual/Main.ltx +++ /dev/null @@ -1,25 +0,0 @@ -\documentclass[letterpaper,10pt,oneside]{book} -\usepackage[T1]{fontenc} -%\usepackage[defaultmono]{droidmono} -\usepackage[scaled]{beramono} -\usepackage{fancyvrb} -\usepackage{geometry} -\usepackage{pdflscape} -%\usepackage{showframe} % Diagnostic - -% Suppress headers and footers completely -\pagestyle{empty} - -% 66 lines per page, portrait -\geometry{top=0.0in, bottom=0.0in, left=1.5in, right=1.5in} - -\RecustomVerbatimCommand{\VerbatimInput}{VerbatimInput} -{ - commandchars=\\\{\} -} - -\begin{document} - -\VerbatimInput{zcpr.ltx} - -\end{document} \ No newline at end of file diff --git a/Source/Doc/ZCPR Manual/zcpr.ltx b/Source/Doc/ZCPR Manual/zcpr.ltx deleted file mode 100644 index 732f43a7..00000000 --- a/Source/Doc/ZCPR Manual/zcpr.ltx +++ /dev/null @@ -1,1384 +0,0 @@ - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - - - - \textbf{Documentation on ZCPR - A Z80 Replacement for the CP/M CCP} - - - - - ZCPR is a Group Project By the CCP-GROUP: - RLC - Richard Conn FJW - Frank Wancho - KBP - Keith Peterson RGF - Ron Fowler - - - ZCPR Documentation By RLC - - - - - - - - Table of Contents - ----- -- -------- - - Introduction 2 - - Part A: Installation Instructions 4 - ZCPR Integration Example 5 - Setting the ZCPR Inline Options 8 - REL, BASE, CPRLOC, RAS, SUBA, CLEVEL3 8 - Customization Symbols 8 - NLINES, WIDE, PGDFLT 8 - PGDFLG, MAXUSR, SYSFLG, SOFLG, SUPRES, - DEFUSR, SPRMPT, CPRMPT, NUMBASE, 9 - SECTFLG, FENCE 10 - Patching SUBMIT.COM 10 - - Part B: Usage Instructions and Explanation of - Commands 11 - The ZCPR Command Hierarchy Search 11 - The ZCPR-Resident Commands 14 - DIR, ERA 14 - LIST, TYPE, SAVE 15 - REN, USER, DFU 16 - JUMP, GO, GET 17 - ZCPR Error Messages 18 - - Part C: ZCPR Command Levels and How to Use Them 19 - - - - - - - - - Page 1 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - \textbf{Documentation on ZCPR - A Z80 Replacement for the CP/M CCP} - - - - - ZCPR is a replacement for the CP/M Console Command Processor - (CCP) which is designed to run as part of CP/M on Z80-based - microcomputers. In most cases it is upward-compatible with the - original CP/M Version 2.2 CCP. - - ZCPR, however, provides many extensions to the CP/M CCP. - Included in these extensions are the following features: - - . The TYPE function can be made to page or not page its - output at the user's discretion - - . A LIST function is available which sends its output - to the CP/M LST: Device and does NOT page - - . The DIR command has been extended to allow the dis- - play of the system files or all files - - . The ERA command now prints out the names of the files - it is erasing - - . The current user number may be included as part of - the command prompt; if the user is under a number other than 0, - the prompt is of the form 'du>' (like 'A2>' or 'B10>'), and, if - the user is under 0, the prompt may be 'd>' or 'd0>' as per his - choice - - . The SUBMIT facility has been changed in two basic - ways: - - the prompt changes to 'du$' or 'd$' when the - SUBMIT command is printed - - the $$$.SUB is executed from drive A: (note that - the original SUBMIT problem now exists, but the new SUB.COM - facility corrects it); the CCP-GROUP definition of an Indirect - Command File now applies, and this definition is that any - sequence of commands which may be issued from the console is also - a valid sequence of commands for execution from an Indirect - Command File; hence, the sequence: - - DIR - B: - DIR - A: - - may be issued from either the console or an Indirect Command - File, and the results of the execution of this sequence are the - same. Basically, this says that Indirect Command Files are - upward-compatible to the console input (but not necessarily that - the contents of an Indirect Command File may be issued at the - console without modification). - - - Page 2 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - . A command-search hierarchy is now implemented which - is executed roughly as follows: - - the user's command is checked against the CPR- - resident commands and executed immediately if a match is found - - failing that, the current user number on the - current disk is scanned for the COM file; the COM file is loaded - and executed if found - - failing that, a default user number (initially 0 - but can be reset with the DFU CPR-resident command) on the cur- - rent disk is scanned for the COM file; the COM file is loaded and - executed if found - - finally, failing that, the default user number - on disk A: is scanned for the COM file; the COM file is loaded - and executed if found or an error message (COMMAND?, when COMMAND - was the user's command name) is printed - - . The numeric argument for the SAVE command can be - specified in hexadecimal so that the user may employ the values - presented by tools such as DDT exactly as they are given - - . A GET command which loads a file at a specified - memory address and a JUMP command which "calls" the subroutine at - a specified memory address have been added; a GO command which - "calls" the subroutine at 100H (subset of the JUMP capability) - has also been added - - - This document provides the user of ZCPR with the following - information: - - Part A: Installation Instructions - Part B: Usage Instructions and Explanation of Commands - Part C: ZCPR Command Levels and How to Use Them - - - - - - - - - - - - - - - - - - - - - - - - Page 3 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - Part A - Installation Instructions - - In order to install ZCPR on a target microcomputer (must be - currently running CP/M 2.2), the user must know two basic things: - - 1) Where his CCP is currently running in memory - 2) Where his CCP is located in the SYSGEN image, or, - for systems which don't support SYSGEN (such as P&T CP/M 2.2 for - the TRS-80 Model II), where his CCP is located on disk and how to - place the new ZCPR on top of it - - The first question is answered relatively easily. A pro- - gram, known as either BDOSLOC or BDLOC (for BDOS Locator), is - provided with ZCPR. You should assemble this program for your - particular computer (change the base ORG if you are running non- - ORG-0 CP/M) and execute it. Upon execution, it will provide you - with the base address of (1) the BDOS and (2) the CCP for your - particular system. BDOSLOC has worked correctly for all systems - tested so far, but there is always a chance that it may NOT work - for some non-tested system. For the time being, assume that it - works correctly and record the starting base page address of your - CCP. - - The second question is not answered nearly so easily. If - you have the ability to SYSGEN your system, it is much easier - (commonly) than if you do not. You must, after assembling the - ZCPR properly, integrate it into the sysgen (or disk) image of - CP/M. This can be done by obtaining a SYSGEN image of your - system, scanning it via a debugger such as DDT to find the offset - for the CCP, reading the new CPR in on top of the old one, and - finally running SYSGEN again to place the resultant system on - disk. If you DO NOT have SYSGEN capability, a Disk Utility - program is required to locate the CCP on disk and then write the - new ZCPR on top of the old one. The net result of this - integration is the placement of the new ZCPR onto disk in the - proper place so that it will be loaded with the rest of CP/M on - cold boot and executed properly. - - To find the original CCP, you typically have to locate it by - its appearance. It is probably stored contiguously on disk, so, - once it is found, a sequential overwrite is all that is required. - Probability is extremely high that it is stored contiguously in - the SYSGEN image. The CCP starts with two (2) and ONLY TWO jump - instructions followed by a buffer area (possibly containing an - initial command and/or the Digital Research copyright notice). - The Digital Research manuals show the CCP to reside at address - 980H in the SYSGEN image, but this may vary with system. To - find this image, use DDT or some other such debugger, load the - SYSGEN image you can get via SYSGEN, and examine memory starting - at around 900H for the two (and ONLY two) jumps described above. - If you find an area with more than two jumps (a group of them), - you are probably looking at the BIOS and should go lower for the - CCP. The CCP will probably start on an even page or half-page - address (like 900H, 980H, 1100H, etc). - - Page 4 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - Now that the location of the CCP has been found, record this - address for later. You are now ready for the integration of ZCPR - into your system. To do this, perform the following steps using - the information of the page address of the CCP (obtained from - BDOSLOC and called CPRLOC within ZCPR) and the SYSGEN image - address of the CCP (called IMAGE for reference in this document). - - 1. Edit ZCPR and set the CPRLOC equate to the value - obtained from above. Also set any flags and values as you desire - (see the section on ZCPR Customization below). When satisfied, - end the edit session. - - 2. Assemble ZCPR with MAC (or equivalent). This - assembler is required because of the MACROs used. Only the - resultant HEX file is required. - - 3. Assuming that you can use SYSGEN, obtain a SYSGEN - image of your current CP/M system and save it on disk. - - 4. Load the SYSGEN image into memory with DDT (or - equivalent). Once loaded, verify that the original CCP is at the - IMAGE address found above and compute the integration offset - using the DDT H command: - H, - The second number displayed gives you the OFFSET value required - for step 5. - - 5. Integrate ZCPR into your SYSGEN image via DDT's I - and ROFFSET commands. Use IZCPR.HEX (or the name of your version - of ZCPR) to load the FCB and ROFFSET (where OFFSET was computed - in step 4) to load the ZCPR.HEX file into memory at the proper - location. Check to see that ZCPR is indeed properly loaded by - examining the SYSGEN IMAGE area. - - 6. Place the new system on disk by running SYSGEN and - NOT loading the system from disk (use the memory image). - - For further clarification of the above process, the - following is a sample terminal session which outlines the steps - taken. - - ZCPR Integration Example - - - B>; Sample terminal session for integrating ZCPR - B>sysgen - SYSGEN VER 2.2 - SOURCE DRIVE NAME (OR RETURN TO SKIP)b - SOURCE ON B, THEN TYPE RETURN <-- I hit the RETURN key here - FUNCTION COMPLETE / - DESTINATION DRIVE NAME (OR RETURN TO REBOOT) <-- and here - B>save 44 cpm56.com <-- We now have a SYSGEN image of CP/M - to work with - - - - Page 5 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - B>xdir - XDIR Version 2.6 User Number: 0, Double Density - File Attributes: Non-System - - Filename.Typ Size K Filename.Typ Size K Filename.Typ Size K - -------- --- ------ -------- --- ------ -------- --- ------ - !TEXTWRK.-12 0 CPR .DOC 8 EE687 .TXT 4 - CPR .AQM 34 TFS .HLP 6 EE687PRE.TXT 4 - CPR .ASM 50 CONTENTS.T01 6 SW1 .TXT 10 - CPR .BAK 4 CONTENTS.T02 4 SW2 .TXT 2 - CPM56 .COM 12 CONTENTS.T03 4 - B: 30 Entries & 22 Files -- 338K Bytes Remaining - File Data: 14 Files -- 154K Bytes Displayed - B>bdosloc <-- Now to locate the CCP's address - The Base Page Address of this system's BDOS is C5 - The Base Page Address of this system's CCP is BD <-- This is it - B>ddt cpm56.com <-- Now to find the CCP in the SYSGEN image - DDT VERS 2.0 - NEXT PC - 2D00 0100 - -d900,90f <-- Start looking around here - 0900 31 80 E7 3E 06 3C 3C FE 1B CA 00 C2 DA 11 E7 D6 1..>.<<......... - -da00,a0f - 0A00 31 00 01 01 01 0C C5 CD 0F E4 21 00 BE 11 00 04 1.........!..... - -db00,b0f - 0B00 31 00 01 01 01 11 C5 CD 0F E4 21 00 C0 11 00 02 1.........!..... - -db80,b8f - 0B80 31 00 01 01 09 01 CD A8 00 21 00 D2 11 00 C2 0E 1........!...... - -- Detail Left Out -- - -d1100 <-- I found it at 1100H; note the 2 JMP's - 1100 C3 FF BD C3 FB BD 50 10 20 20 20 20 20 20 20 20 ......P. - 1110 20 20 20 20 20 20 20 20 00 00 00 00 00 00 00 00 ........ - 1120 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................ - -- Detail Left Out -- - -^C <-- Return to CP/M; I know that CPRLOC will be - BD00H and the IMAGE offset is 1100H - - B>ed cpr.asm \{edit ZCPR here and place CPRLOC=BD00H\}# - -- Detail Left Out -- - - B>mac cpr $pz sz <-- Now to assemble the CPR - CP/M MACRO ASSEM 2.0 - C4F0 <-- Note that CPR MUST end before BDOS - begins! - 014H USE FACTOR - END OF ASSEMBLY - - - - - - - - - - - - Page 6 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - - B>ddt cpm56.com <-- Now to integrate! - DDT VERS 2.0 - NEXT PC - 2D00 0100 - -h1100,bd00 <-- Compute offset for new CPR - CE00 5400 <-- Offset is 5400H - -icpr.hex <-- Init FCB - -r5400 <-- Read in new CPR with offset - NEXT PC - 2D00 0000 - -^C <-- Done! - B>sysgen <-- Now to SYSGEN onto disk - SYSGEN VER 2.2 - SOURCE DRIVE NAME (OR RETURN TO SKIP) <-- Use memory image - DESTINATION DRIVE NAME (OR RETURN TO REBOOT)b <-- onto B: - DESTINATION ON B, THEN TYPE RETURN - FUNCTION COMPLETE - DESTINATION DRIVE NAME (OR RETURN TO REBOOT) <-- Done for now - - B> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Page 7 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - Setting the ZCPR Inline Options - - The following are the four basic options available to the - user under ZCPR for customization of his package. - - Option Name Function - - REL Configures CPRLOC (CPRLOC equ 0) for integration - via MOVCPM rather than the DDT/SYSGEN technique - outlined above; set to TRUE for MOVCPM integra- - tion or FALSE for DDT/SYSGEN integration - - BASE Base address of your CP/M system; standard CP/M - has a base of 0, but some CP/M systems (such as - for the TRS-80 Model I and Heath/Zenith H89/Z89) - start physical RAM memory at a higher address; - equate BASE to the starting RAM memory address of - your system - - CPRLOC This is the starting address of ZCPR; set the - second CPRLOC equate to the address you obtain - from BDOSLOC - - RAS This is an equate which masks out selected ZCPR - command functions for security purposes on - Remote Access Systems such as Bulletin Boards; - the masked out functions currently include - SAVE, ERA, REN, JUMP, GO, and GET; set RAS to TRUE - to mask these out or FALSE to leave them in - - SUBA This is an equate which determines the drive - onto which ZCPR will look for an executing - Indirect Command File. If the basic philosophy - of the Indirect Command File described above is - to be maintained, this symbol should be set to - TRUE (look on drive A: for the $$$.SUB file); if - not, this symbol should be set to FALSE (look on - the default drive from the $$$.SUB file). To - review, the basic philosophy of the Indirect - Command File is that any sequence of commands - which may be issued from the console (within - reason, which means NOT to erase a $$$.SUB file) - may also be issued from within an Indirect - Command File, and the resultant execution should - be identical (same functions performed). - - CLEVEL3 This equate enables or disables extended Command - Level 3 Processing. If set to TRUE, extended - Command Level 3 Processing is enabled and the user - command line is automatically capitalized, the - terminating zero is placed at the end of the - buffer, and the internal CIBPTR is set correctly - (see later for more information). - - - - Page 8 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - - Customization Symbols - - The following symbols are provided for further customization - of ZCPR to a user's particular tastes and hardware facilities. - - Option Name Function - - NLINES Number of lines on the user's CRT for paging - - WIDE This equate is used to select a narrow or wide - display under the DIR command; if WIDE is equated - to TRUE, each file name is separated by two - spaces, a FENCE, and two more spaces; if WIDE is - equated to FALSE, each file name is separated by - one space, a FENCE, and one more space - - PGDFLT This is the Paging Default flag for the TYPE - command; if PGDFLT is set to TRUE, the TYPE - command will page its output by default and - the P option on the TYPE command (see below) - will prohibit paging; if PGDFLT is set to FALSE, - the TYPE command will NOT page its output by - default and the P option will enable paging - - PGDFLG This sets the option character in the command - line for the TYPE command (the 'P' mentioned - above); if the user wishes to change this option - character, he need only change this equate - - MAXUSR This is the largest user number recognized by - the USER command; if the user wishes to protect - the higher user areas, he may set this symbol - to the highest area normally accessable; 15 is - the largest permitted value for MAXUSR - - SYSFLG This is the option character for the DIR command - line which is used to specify that DIR search - All Files (both $SYS and $DIR) for its display; - the distributed default for this is 'A' - - SOFLG This is the option character for the DIR command - line which is used to specify that DIR search - ONLY the $SYS files for its display; the distri- - buted default for this is 'S' - - SUPRES Set SUPRES to TRUE to suppress printing the user - number when the user is under User Number 0 or - set SUPRES to FALSE to ALWAYS display the User - Number with the CPR prompt; with SUPRES set to - TRUE, a user on B: in user 0 sees 'B>' as the - prompt, but with SUPRES set to FALSE, a user on - B: in user 0 sees 'B0>' as the prompt - - - - Page 9 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - DEFUSR This is the CPR-default user number which is - searched in the command hierarchy for the COM - files (distributed as 0); the DFU changes this - temporarily until a Warm Boot or Cold Boot is - done, at which time the search reverts to this - value - - SPRMPT This is the CPR prompt character which indicates - that a SUBMIT file is in execution; by default - it is set to '$', so prompts like 'A$' appear - during SUBMIT file execution - - CPRMPT This is the CPR prompt character which indicates - that the CPR is awaiting a user console command; - by default it is set to '>', so prompts like - 'A>' appear during user input to the CPR - - NUMBASE This is the escape character used by those - commands which require a DECIMAL number as - an argument; placing this character after - the number argument switches the base to - HEXADECIMAL; for example, 'SAVE 15 MYFILE' can be - expressed as 'SAVE FH MYFILE' if NUMBASE is - set to 'H' (the default) - - SECTFLG This character constant is the suffix option for - the SAVE command which specifies that sectors, - as opposed to pages, are to be saved; the default - value is 'S' - - FENCE This is the character printed to separate entries - in a directory listing; it's default value is '|' - - - Patching SUBMIT.COM - - SUBMIT.COM may be patched to run with ZCPR by the following - procedure (this is recommended if the user does not have - SUB.COM). This patch simply makes it always place the $$$.SUB - file on Drive A:. Illustrative terminal session follows: - - A>ddt b:submit.com - DDT VERS 2.0 - NEXT PC - 0600 0100 - -s5bb <-- Patch is at 5BB Hex - 05BB 00 1 <-- Change 0 (default drive) to 1 (drive A:) - 05BC 24 . <-- That's it! - -d5b0 5cf <-- See change - 05B0 00 00 00 00 00 00 30 30 31 20 24 01 24 24 24 20 ......001 $.$$$ - 05C0 20 20 20 20 53 55 42 00 00 00 1A 1A 1A 1A 1A 1A SUB......... - -^C <-- Done - A>save 5 newsubmt.com <-- Save new SUBMIT.COM file - - - - Page 10 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - Part B - Usage Instructions and Explanation of Commands - - - The following instructions are written with the assumption - that the reader is quite familiar with how to use CP/M 2.2 and - its CCP. ZCPR is written as a logical extension of the CP/M 2.2 - CCP philosophy and should be addressed as such. - - - - The ZCPR Command Hierarchy Search - - The first, and most basic thing, to learn about ZCPR is the - order in which is searches for a COM file for execution or a file - specified by the GET command. Under the CP/M 2.2 CCP, if the - specified COM file command was not found on the current drive in - the current user area, the CCP aborted with an error message. - ZCPR, however, continues searching from this point a maximum of - two more levels. This command hierarchy search was outlined - above and is described here in further detail. - - 1. If the command is of the form 'COMMAND' and NOT - 'd:COMMAND', the CPR-resident command list is searched for a - match. If the match is found, the CPR-resident command is - immediately processed. If the match is not found or the command - is of the form 'd:COMMAND', the next step is taken. Note that - the 'd:COMMAND' form is good for executing a command COM file - which has the same name as a CPR-resident command (such as SAVE - or DIR). - - 2. If the command is of the form 'd:COMMAND', disk - drive 'd:' is temporarily logged in for the purpose of the - command search. Otherwise, the currently logged-in drive is - used. - - 3. Now the file named COMMAND.COM is searched for. If - found, it is loaded into memory starting at 100H and executed. - If not, proceed to step 4. - - 4. Now that the first search for COMMAND.COM has - failed, the CPR checks to see if the user is under the current - Default User Number. The Default User Number may be that set by - the DEFUSR equate in the CPR or that set by the user via the DFU - command. DEFUSR is in effect if DFU has not been issued since - the last Warm or Cold Boot, and DFU is in effect if it was issued - since the last Warm or Cold Boot. If the user is NOT under the - current Default User Number, ZCPR temporarily logs him into it - and searches the directory. If COMMAND.COM is found, it is - loaded as described above and executed. If not, ZCPR proceeds to - the next step. - - - - - - Page 11 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - 5. The user is now in the Default User Number, and at - this point, ZCPR checks to see if the user is on disk drive A:. - If not, it temporarily logs into A: and searches the default user - number of A: for COMMAND.COM. If found, it is loaded as - described above and executed. If not, ZCPR prints the command - name as an error message and returns to command input mode, - aborting the SUBMIT file if COMMAND came from it. - - In all cases of the search above, if COMMAND.COM is found, - after it is loaded into memory, ZCPR resets the user to his - original disk drive and user number. Hence, the files referenced - by the user by default are obtained from this environment. - - To illustrate this command hierarchy search, consider the - following examples: - - Example 1: DEFUSR equ 0 \{default user number is 0\} - - B10> <-- User is on Drive B:, User Number 10 - B10>ASM TEST.BBZ <-- User wishes to assemble TEST.ASM in - Drive B:, User 10 - <-- At this point, ZCPR looks on B:/10 for ASM.COM, fails, - looks on B:/0, fails, and finally looks on A:/0; it - finds ASM.COM here and goes back to B:/10 for the file - - - Example 2: DEFUSR equ 0 and DFU issued - - B10> <-- User is on Drive B:, User Number 10 - B10>DFU 5 <-- User Selects User 5 as default - B10>ASM TEST.BBZ <-- As above - <-- At this point, ZCPR looks on B:/10 for ASM.COM, fails, - look on B:/5, fails, and finally looks on A:/5; it - fails here also and prints ASM? as an error message - - Example 3: DEFUSR equ 0 - - B> <-- User is on Drive B:, User Number 0 - B>ASM TEST.BBZ <-- As above - <-- At this point, ZCPR looks on B:/0 for ASM.COM, fails, - looks on A:/0, fails, and prints error message - - Example 4: DEFUSR equ 0 - - A10> <-- User is on Drive A:, User Number 10 - A10>ASM TEST.AAZ <-- As above, but file on A: - <-- At this point, ZCPR looks on A:/10 for ASM.COM, fails, - looks on A:/0, fails, and prints error message - - - - - - - - - Page 12 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - Another Example: - - For example, if the user is logged into Drive B: in - User Area 10, the Default User Number is 0, and the following COM - files are present as indicated -- - - WM.COM on Drive A: in User 0 - MBASIC.COM on Drive A: in User 0 and on - Drive B: in User 0 - TEST.COM on Drive B: in User 10 and Drive B: - in User 0 - - then the following happens when the following commands are - issued from the console (or Indirect Command File): - - B10>WM TEST2.TXT - ^ ^ ^-------- File to be edited - | +----------- Invoke the WM.COM file (Word Master editor) - +--------------- User is on Drive B: in User Area 10 - - Results: - ZCPR searches B: User 10, B: User 0, and A: User 0 for - WM.COM; it finds WM.COM in A: User 0, loads it, logs the user - back into B: User 10, and executes it. - - B10>MBASIC - ^ ^----- Invoke the MBASIC.COM file (MBASIC Interpreter) - +--------- User is on Drive B: in User Area 10 - - Results: - ZCPR searches B: User 10 and B: User 0 for MBASIC.COM; - it finds MBASIC.COM in B: User 0, so it doesn't bother to look on - A: User 0. MBASIC.COM is then loaded and executed as described - in the previous example. - - B10>TEST - ^ ^--- Invoke the TEST.COM file (TEST program) - +------- User is on Drive B: in User Area 10 - - Results: - ZCPR searches B: User 10 for TEST.COM; it finds - TEST.COM in B: User 0, so it doesn't bother to look further (if - it had, it would have found TEST.COM in B: User 0). TEST.COM is - then loaded and executed as described above. - - B10>TEST2 - | +--- Invoke the TEST2.COM file (TEST2 program) - +------- User is on Drive B: in User Area 10 - - Results: - ZCPR searches B: User 10, B: User 0, and A: User 0 for - TEST2.COM; it doesn't find it, so it issues the error message - 'TEST2?', which says it couldn't find TEST2.COM. - - - - Page 13 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - - - The ZCPR-Resident Commands - - The following pages describe the ZCPR-Resident Commands. - These are commands located within ZCPR itself which are executed - from within ZCPR. The phrases and refer to ambiguous - file name and unambigous file name as per the CP/M convention. - - Command: DIR - Function: To Display a listing of the names of the files on disk - Forms: - DIR <-- Displays $DIR files - DIR S <-- Displays $SYS files - DIR A <-- Displays both $DIR and $SYS files - Customization Variables: - WIDE SYSFLG SOFLG FENCE - Examples: - DIR *.ASM <-- All $DIR .ASM files - DIR *.COM S <-- All $SYS .COM files - DIR *.COM A <-- All .COM files - Notes: - If a file is scanned for and no such name exists on disk, - the 'No Files' message will appear. However, if a file is - scanned for and the name exists as a $SYS file and $DIR files are - being scanned for, no file name is displayed but the 'No Files' - message does NOT appear. For example, if TEST.COM is a $SYS file - and 'DIR TEST.COM' is issued, no message appears. If 'DIR - TEXT.COM' is issued and TEXT.COM does not exist on disk, the 'No - Files' message is displayed. - - - Command: ERA - Function: To Erase the specified $R/W files from disk - Forms: - ERA <-- Erase both $DIR and $SYS files - Customization Variables: - WIDE FENCE - Examples: - ERA *.ASM <-- Erase all .ASM files - ERA *.* <-- Erase all files - Notes: - If a $R/O file is encountered, a BDOS error message will be - displayed and the procedure is stopped. The user is unsure at - this time as to which files have been erased and which have not - and should check. Sorry for this problem! The ERASE command (to - be given to SIG/M by RLC in the near future) is a solution to - this problem. - - - - - - - - - Page 14 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - - Command: LIST - Function: To Print the specified file on the CP/M LST: device - Forms: - LIST <-- Print the file (no paging) - Customization Variables: - -None- - Examples: - LIST TEST.TXT <-- Print TEST.TXT on LST: - Notes: - If the file has a $SYS attribute, it will be found as well - as those with $DIR attributes. - - - Command: TYPE - Function: To Print the specified file on the CP/M CON: device - Forms: - TYPE <-- Print the file with the paging deflt - TYPE P <-- Print the file with the paging deflt - negated - Customization Variables: - NLINES PGDFLT PGDFLG - Examples: - TYPE TEST.TXT - TYPE TEST.TXT P - Notes: - When the display pauses during paging, type any char to - continue or ^C to abort. ^S also works. - - - Command: SAVE - Function: To Copy the TPA starting at 100H to disk - Forms: - SAVE <-- in DEC - SAVE H <-- in HEX - SAVE S <-- Number of sectors - SAVE H S <-- Number of sectors - Customization Variables: - NUMBASE RAS - Examples: - SAVE 15 MYFILE.TXT <-- 15 pages saved - SAVE FH MYFILE.TXT <-- 15 pages saved - SAVE 10H MYFILE.TXT S <-- 16 sectors (8 pages) saved - Notes: - If the file name to be saved already exists, then SAVE will - exit with the message 'Delete File?'; if the user REALLY wants to - save under this name, he may then type Y or y and the current - file will be deleted and then recreated containing the specified - part of the TPA. - - - - - - - - Page 15 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - - - Command: REN - Function: To Change the name of a disk file - Forms: - REN = - Customization Variables: - RAS - Examples: - REN NEWFILE.TXT=OLDFILE.TXT - Notes: - If already exists, the message 'Delete File?' will - be printed and the user may respond with Y or y to delete the - current and then rename to . - - Command: USER - Function: To Change the current user number - Forms: - USER <-- in DEC - USER H <-- in HEX - Customization Variables: - -None- - Examples: - USER 15 USER FH USER 0 - USER <-- Same as USER 0 - Notes: - -None- - - - Command: DFU - Function: To Temporarily Change the default user number for the - command hierarchy search - Forms: - DFU <-- in DEC - DFU H <-- in HEX - Customization Variables: - -None- - Examples: - DFU 15 DFU FH DFU 0 - DFU <-- Same as DFU 0 - Notes: - See above for explanation. - - - - - - - - - - - - - - - Page 16 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - - - Command: JUMP - Function: To "call" the subroutine at the specified page address - Forms: - JUMP

    <--
    in HEX - Customization Variables: - NUMBASE RAS - Examples: - JUMP E000 or JUMP E000H <-- Jump to E000H - JUMP <-- Jump to 000H - JUMP 0 <-- Jump to 000H - Notes: - JUMP performs a subroutine "call", so the called routine may - return to the ZCPR by either a RET or a Warm Boot. - - - Command: GO - Function: To "call" the subroutine starting at 100H - Forms: - GO <-- Execute reentrant at 100H - Customization Variables: - RAS - Examples: - GO *.ASM <-- Assuming XDIR is loaded, - gives directory of *.ASM - Notes: - This command is identical in function to JUMP 100H; JUMP, - however, leaves the address as the first entry in CP/M BASE + 80H - (the input line buffer), while GO has no such address. - - - Command: GET - Function: To load a file from disk into memory starting at the - specified page - Forms: - GET
    <--
    in HEX - Customization Variables: - NUMBASE RAS - Examples: - GET 8000 TEST.80 <-- Load TEST.80 starting at 8000H - GET 100 TEST.80 or GET 100H TEST.80 <-- Load TEST.80 - starting at 100H - GET 0 TEST.80 <-- Load TEST.80 starting at 000H - Notes: - GET searches for the specified file according to the same - command hierarchy search employed by the ZCPR command scanner. - Hence, if the user is on B:/10 and the file is on A:/0 with the - current default user number at 0, GET will search from B:/10 to - B:/0 to A:/0 in looking for the file. - - - - - - - Page 17 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - ZCPR Error Messages - - The following are the error messages issued by ZCPR and - their meanings. - - Message Meaning - - ? Printed after a command or an argument means that such - was invalid - - No File From DIR, this means that DIR did not locate any files - Also from ERA with the same meaning - - All? Issued in response ERA *.*, asks the user is he really - wants to erase all the files. Unlike under the - original CP/M 2.2 CCP, single character input is - required (Y or y for yes and anything else for no) - with NO to end the line - - Full From SAVE, means that there is not enough space on - disk - From GET or command load by CPR, means that there - is not enough space in memory - - Delete File? - From REN or SAVE, means that the file specified already - exists on disk and the user may type Y or y to delete - it and proceed with the REN or SAVE function - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Page 18 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - - Part C - ZCPR Command Levels and How to Use Them - - - ZCPR Version 1.0 and beyond supports three distinct command - levels in its implementation. Each level constitutes a different - way to issue a command for ZCPR to process. - - Command Levels 1 and 2 are common to all implementations of - CP/M and CP/ZM from CP/M Version 1.4. Command Level 1 is that - command level in which the command is issued by the user from his - console terminal. The prompt 'd>' or 'du>' appears on the - terminal, and the user is allowed to enter the command with - editing from the terminal. Command Level 2 is that command level - in which the command is entered from an executing $$$.SUB file. - - In both cases, the command is stored in the internal ZCPR - buffer called CIBUFF (Command Input BUFFer). Under both Command - Levels 1 and 2, the command is placed into this buffer, the - characters of the command line are capitalized, a character count - which indicates the number of characters in the command line is - stored in CBUFF (the byte before CIBUFF), an ending binary 0 is - placed after the last character in the command line, and the - internal pointer CIBPTR (Command Input Buffer PoinTeR) is set to - point to CIBUFF (the first character of the command line). - - Command Level 3 is an extended concept to Command Levels 1 - and 2 which is specifically supported by ZCPR Version 1.0 and - beyond. This command level allows a transient program to place a - command line into CIBUFF and the character count into CBUFF and - have this command line executed by ZCPR. Once control is trans- - ferred to ZCPR to execute the command line, the transient program - which placed the command line loses control and the command is - executed exactly as though it had been typed by the user at his - console terminal. - - In order for a transient program to utilize the Command - Level 3 facility, this program MUST do the following: - - 1. Locate the ZCPR. Since the ZCPR is ALWAYS 2K bytes - in size and located directly under the BDOS, the transient can - locate the ZCPR by examining the BDOS entry page address at - location 7 and subtracting 8 from this number (8 pages = 2K - bytes). The resulting number is the base page address of ZCPR. - - 2. Store the command line in CIBUFF and the character - count in CBUFF. Knowing the base page address of ZCPR, the - following information is useful in doing this: - - - - - - - - Page 19 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - - ORG CPRLOC ;Base Address of ZCPR - JMP CPR ;Enter ZCPR and Execute Default Cmd - JMP CPR1 ;Enter ZCPR and Don't Execute - MBUFF: DB BUFLEN ;Size of CIBUFF in bytes - CBUFF: DS 1 ;Number of Bytes in Command Line - CIBUFF: DS BUFLEN ;Buffer for Command Line - DS 1 ;Buffer for Ending 0 (set by ZCPR) - CIBPTR: DS 2 ;Address of CIBUFF (set by ZCPR) - - - 3. Obtain the User/Disk Flag. Location 4 contains - this number, but the user may select a flag of his choice. This - flag is one byte long, and the high-order nybble (4 bits) - contains the user number and the low-order nybble contains the - disk number to process the command from. The User/Disk Flag is - to be passed to ZCPR in the C Register. - - 4. When ready, transfer control to ZCPR to process the - command by JMPing to the base address of ZCPR. The first JMP in - the JMP Table given above is at this address. At this time, ZCPR - will log in the user and disk in the User/Disk Flag and process - the Command Level 3 Command Line. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Page 20 - - - - - - ZCPR - A Z80 Replacement for the CP/M CCP - - - - - The following is a sample program which illustrates the - steps outlined above: - - ; - ; Demonstration of Command Level 3 Facility by RLC - ; - udflag equ 4 ;Address of User/Disk Flag - bdos equ 5 ;Address of BDOS Entry Point - - org 100h - - lxi d,prmpt ;Print User Prompt - mvi c,9 ;PRINT function - call bdos - - lhld bdos+1 ;Get address of BDOS - mov a,h ;High-Order Address in A - sui 8 ;A=High-Order Address of CPR - mov h,a ;HL=Address of CPR - mvi l,0 - shld cpr ;Save address in buffer - - lxi d,6 ;Point to command line buffer - dad d ;HL points to command line buffer - xchg ;DE points to command line buffer - mvi c,10 ;READLN into this buffer - call bdos - - lhld cpr ;Get Address of CPR - lda udflag ;Get User/Disk Flag - mov c,a ; ... in C - pchl ;Run Command Line - - cpr: ds 2 ;CPR Address buffer - prmpt: db 'User Command? $' - - - - - - - Enjoy using ZCPR! - -- RLC - - - - - - - - - - - - - Page 21 \ No newline at end of file diff --git a/Source/Makefile b/Source/Makefile index 1204b022..166bb4c1 100644 --- a/Source/Makefile +++ b/Source/Makefile @@ -1,7 +1,6 @@ # # order is actually important, because of build dependencies # -NOTDONE = Doc SUBDIRS = Prop SUBDIRS += Apps SUBDIRS += CBIOS